Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion bundler-tests/browser/nextjs-15-edge/middleware.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ diag.setLogger(new DiagConsoleLogger());

logs.setGlobalLoggerProvider(
new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [new SimpleLogRecordProcessor({ exporter: new OTLPLogExporter() })],
})
);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ diag.setLogger(new DiagConsoleLogger());

logs.setGlobalLoggerProvider(
new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [new SimpleLogRecordProcessor({exporter: new OTLPLogExporter()})],
})
);

Expand Down
2 changes: 1 addition & 1 deletion bundler-tests/browser/webpack-5/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ diag.setLogger(new DiagConsoleLogger());

logs.setGlobalLoggerProvider(
new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [new SimpleLogRecordProcessor({ exporter: new OTLPLogExporter() })],
})
);

Expand Down
2 changes: 1 addition & 1 deletion bundler-tests/node/webpack-5/src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ diag.setLogger({

logs.setGlobalLoggerProvider(
new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [new SimpleLogRecordProcessor({ exporter: new OTLPLogExporter() })],
})
);

Expand Down
4 changes: 3 additions & 1 deletion e2e-tests/test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ const metricReader = new PeriodicExportingMetricReader({
const logExporter = new OTLPLogExporter({
url: `${collectorUrl}/logs`,
});
const logRecordProcessors = [new SimpleLogRecordProcessor(logExporter)];
const logRecordProcessors = [
new SimpleLogRecordProcessor({ exporter: logExporter }),
];

// Set up OpenTelemetry SDK
const sdk = new NodeSDK({
Expand Down
2 changes: 1 addition & 1 deletion examples/opentelemetry-web/examples/session/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ const tracer = tracerProvider.getTracer('example');
const loggerProvider = new LoggerProvider({
processors: [
createSessionLogRecordProcessor(sessionManager),
new SimpleLogRecordProcessor(new ConsoleLogRecordExporter())
new SimpleLogRecordProcessor({ exporter: new ConsoleLogRecordExporter() })
]
});

Expand Down
1 change: 1 addition & 0 deletions experimental/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ For notes on migrating to 2.x / 0.200.x see [the upgrade guide](doc/upgrade-to-2
* (user-facing): `BatchLogRecordProcessor` now takes a single options object will all possible properties, instead of two separate arguments. For example, before `new BatchLogRecordProcessor(exporter, { maxQueueSize: 1000 })`, after `new BatchLogRecordProcessor({ exporter, maxQueueSize: 1000 })`.
* `interface BufferConfig` -> `interface BatchLogRecordProcessorOptions`, and now includes the `exporter` property
* `interface BatchLogRecordProcessorBrowserConfig` -> `interface BatchLogRecordProcessorBrowserOptions`
* (user-facing): `SimpleLogRecordProcessor` now takes a single options object will all possible properties, instead of two separate arguments. For example, before `new SimpleLogRecordProcessor(exporter)`, after `new SimpleLogRecordProcessor({ exporter })`. [#6836](https://github.com/open-telemetry/opentelemetry-js/pull/6836)
Comment thread
maryliag marked this conversation as resolved.
Outdated

### :rocket: Features

Expand Down
4 changes: 1 addition & 3 deletions experimental/examples/logs/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@ diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.DEBUG);

const loggerProvider = new LoggerProvider({
processors: [
new SimpleLogRecordProcessor(
new ConsoleLogRecordExporter()
)
new SimpleLogRecordProcessor({ exporter: new ConsoleLogRecordExporter() }),
],
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,9 @@ describe('OTLPLogExporter', function () {
// arrange
const loggerProvider = new LoggerProvider({
processors: [
new SimpleLogRecordProcessor(
new OTLPLogExporter({
url: 'http://localhost:1503',
})
),
new SimpleLogRecordProcessor({
exporter: new OTLPLogExporter({ url: 'http://localhost:1503' }),
}),
],
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,9 @@ describe('OTLPLogExporter', function () {
.stub(window, 'fetch')
.resolves(new Response('', { status: 200 }));
const loggerProvider = new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [
new SimpleLogRecordProcessor({ exporter: new OTLPLogExporter() }),
],
});

// act
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,9 @@ describe('OTLPLogExporter', () => {
});

const loggerProvider = new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [
new SimpleLogRecordProcessor({ exporter: new OTLPLogExporter() }),
],
});

loggerProvider.getLogger('test-logger').emit({ body: 'test-body' });
Expand Down
2 changes: 1 addition & 1 deletion experimental/packages/exporter-logs-otlp-proto/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ const collectorOptions = {
const logExporter = new OTLPLogExporter(collectorOptions);
const logProvider = new LoggerProvider({
resource: resourceFromAttributes({'service.name': 'testApp'}),
processors: [new SimpleLogRecordProcessor(logExporter)]
processors: [new SimpleLogRecordProcessor({ exporter: logExporter })]
});

const logger = logProvider.getLogger('test_log_instrumentation');
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,9 @@ describe('OTLPLogExporter', function () {
.stub(window, 'fetch')
.resolves(new Response('', { status: 200 }));
const loggerProvider = new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [
new SimpleLogRecordProcessor({ exporter: new OTLPLogExporter() }),
],
});

// act
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,9 @@ describe('OTLPLogExporter', () => {
});

const loggerProvider = new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new OTLPLogExporter())],
processors: [
new SimpleLogRecordProcessor({ exporter: new OTLPLogExporter() }),
],
});

loggerProvider.getLogger('test-logger').emit({ body: 'test-body' });
Expand Down
2 changes: 1 addition & 1 deletion experimental/packages/opentelemetry-sdk-node/src/sdk.ts
Original file line number Diff line number Diff line change
Expand Up @@ -425,7 +425,7 @@ export class NodeSDK {
this._loggerProviderConfig = {
logRecordProcessors: exporters.map(exporter => {
if (exporter instanceof ConsoleLogRecordExporter) {
return new SimpleLogRecordProcessor(exporter);
return new SimpleLogRecordProcessor({ exporter });
} else {
return getBatchLogRecordProcessorFromEnv(exporter);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -779,7 +779,7 @@ export function createLogRecordProcessorFromConfig(
case 'simple': {
const props = properties as SimpleLogRecordProcessorConfigModel;
const exporter = createLogRecordExporterFromConfig(props.exporter);
return new SimpleLogRecordProcessor(exporter);
return new SimpleLogRecordProcessor({ exporter });
}

default:
Expand Down
26 changes: 15 additions & 11 deletions experimental/packages/opentelemetry-sdk-node/test/sdk.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -429,7 +429,9 @@ describe('NodeSDK', () => {
metricReaders: [metricReader],
traceExporter: new ConsoleSpanExporter(),
logRecordProcessors: [
new SimpleLogRecordProcessor(new InMemoryLogRecordExporter()),
new SimpleLogRecordProcessor({
exporter: new InMemoryLogRecordExporter(),
}),
],
autoDetectResources: false,
});
Expand Down Expand Up @@ -474,7 +476,9 @@ describe('NodeSDK', () => {
metricReaders: [metricReader],
traceExporter: new ConsoleSpanExporter(),
logRecordProcessors: [
new SimpleLogRecordProcessor(new InMemoryLogRecordExporter()),
new SimpleLogRecordProcessor({
exporter: new InMemoryLogRecordExporter(),
}),
],
autoDetectResources: false,
});
Expand Down Expand Up @@ -509,9 +513,9 @@ describe('NodeSDK', () => {

it('should register a logger provider if a log record processor is provided', async () => {
const logRecordExporter = new InMemoryLogRecordExporter();
const logRecordProcessor = new SimpleLogRecordProcessor(
logRecordExporter
);
const logRecordProcessor = new SimpleLogRecordProcessor({
exporter: logRecordExporter,
});
const sdk = new NodeSDK({
logRecordProcessor: logRecordProcessor,
autoDetectResources: false,
Expand All @@ -536,9 +540,9 @@ describe('NodeSDK', () => {

it('should register a logger provider if multiple log record processors are provided', async () => {
const logRecordExporter = new InMemoryLogRecordExporter();
const simpleLogRecordProcessor = new SimpleLogRecordProcessor(
logRecordExporter
);
const simpleLogRecordProcessor = new SimpleLogRecordProcessor({
exporter: logRecordExporter,
});
const batchLogRecordProcessor = new BatchLogRecordProcessor({
exporter: logRecordExporter,
});
Expand Down Expand Up @@ -1374,9 +1378,9 @@ describe('NodeSDK', () => {
process.env.OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT = '10';

const logRecordExporter = new InMemoryLogRecordExporter();
const logRecordProcessor = new SimpleLogRecordProcessor(
logRecordExporter
);
const logRecordProcessor = new SimpleLogRecordProcessor({
exporter: logRecordExporter,
});
const sdk = new NodeSDK({
logRecordProcessors: [logRecordProcessor],
autoDetectResources: false,
Expand Down
16 changes: 10 additions & 6 deletions experimental/packages/sdk-logs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,11 @@ const {
// To start a logger, you first need to initialize the Logger provider.
// and add a processor to export log record
const loggerProvider = new LoggerProvider({
processors: [new SimpleLogRecordProcessor(new ConsoleLogRecordExporter())]
processors: [
new SimpleLogRecordProcessor({
exporter: new ConsoleLogRecordExporter()
})
]
});

// To create a log record, you first need to get a Logger instance
Expand Down Expand Up @@ -85,7 +89,7 @@ const loggerProvider = new LoggerProvider({
}
}
]),
processors: [new SimpleLogRecordProcessor(exporter)]
processors: [new SimpleLogRecordProcessor({ exporter })]
});
```

Expand All @@ -109,7 +113,7 @@ const loggerProvider = new LoggerProvider({
}
}
]),
processors: [new SimpleLogRecordProcessor(exporter)]
processors: [new SimpleLogRecordProcessor({ exporter })]
});
```

Expand All @@ -135,7 +139,7 @@ const loggerProvider = new LoggerProvider({
}
}
]),
processors: [new SimpleLogRecordProcessor(exporter)]
processors: [new SimpleLogRecordProcessor({ exporter })]
});
```

Expand Down Expand Up @@ -173,10 +177,10 @@ const defaultLogger = loggerProvider.getLogger('my-service'); // WARN+
interface LoggerConfig {
/** Drop logs with severity below this level (default: UNSPECIFIED = no filtering) */
minimumSeverity?: SeverityNumber;

/** Drop logs from unsampled traces (default: false) */
traceBased?: boolean;

/** Disable this logger completely (default: false) */
disabled?: boolean;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import type { LogRecordExporter } from './LogRecordExporter';
import type { LogRecordProcessor } from '../LogRecordProcessor';
import type { SdkLogRecord } from './SdkLogRecord';
import type { Context } from '@opentelemetry/api';
import type { SimpleLogRecordProcessorOptions } from '../types';

/**
* An implementation of the {@link LogRecordProcessor} interface that exports
Expand All @@ -29,8 +30,8 @@ export class SimpleLogRecordProcessor implements LogRecordProcessor {
private _shutdownOnce: BindOnceFuture<void>;
private _unresolvedExports: Set<Promise<void>>;

constructor(exporter: LogRecordExporter) {
this._exporter = exporter;
constructor(options: SimpleLogRecordProcessorOptions) {
this._exporter = options.exporter;
this._shutdownOnce = new BindOnceFuture(this._shutdown, this);
this._unresolvedExports = new Set<Promise<void>>();
}
Expand Down
4 changes: 4 additions & 0 deletions experimental/packages/sdk-logs/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,10 @@ export interface LogRecordLimits {
attributeCountLimit?: number;
}

export interface SimpleLogRecordProcessorOptions {
exporter: LogRecordExporter;
}

export interface BatchLogRecordProcessorOptions {
exporter: LogRecordExporter;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ function setupLoggerProvider(
const logExporter = new InMemoryLogRecordExporter();
const logProcessor = isNoop
? new NoopLogRecordProcessor()
: new SimpleLogRecordProcessor(logExporter);
: new SimpleLogRecordProcessor({ exporter: logExporter });
const loggerProvider = new LoggerProvider({
processors: [logProcessor],
loggerConfigurator: patterns && createLoggerConfigurator(patterns),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -543,9 +543,9 @@ describe('LoggerProvider', () => {
});

const logRecordExporter = new InMemoryLogRecordExporter();
const logRecordProcessor = new SimpleLogRecordProcessor(
logRecordExporter
);
const logRecordProcessor = new SimpleLogRecordProcessor({
exporter: logRecordExporter,
});
const provider = new LoggerProvider({
processors: [logRecordProcessor],
meterProvider,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,12 +122,12 @@ describe('MultiLogRecordProcessor', () => {

it('should wait for all log record processors to finish flushing', done => {
let flushed = 0;
const processor1 = new SimpleLogRecordProcessor(
new InMemoryLogRecordExporter()
);
const processor2 = new SimpleLogRecordProcessor(
new InMemoryLogRecordExporter()
);
const processor1 = new SimpleLogRecordProcessor({
exporter: new InMemoryLogRecordExporter(),
});
const processor2 = new SimpleLogRecordProcessor({
exporter: new InMemoryLogRecordExporter(),
});

const spy1 = sinon.stub(processor1, 'forceFlush').callsFake(() => {
flushed++;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,9 @@ describe('ConsoleLogRecordExporter', () => {
const spyConsole = sinon.spy(console, 'dir');
const spyExport = sinon.spy(consoleExporter, 'export');
const provider = new LoggerProvider({
processors: [new SimpleLogRecordProcessor(consoleExporter)],
processors: [
new SimpleLogRecordProcessor({ exporter: consoleExporter }),
],
});

provider
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import {
const setup = () => {
const memoryExporter = new InMemoryLogRecordExporter();
const provider = new LoggerProvider({
processors: [new SimpleLogRecordProcessor(memoryExporter)],
processors: [new SimpleLogRecordProcessor({ exporter: memoryExporter })],
});
return { provider, memoryExporter };
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ const setup = (exporter: LogRecordExporter, resource?: Resource) => {
body: 'body',
}
);
const processor = new SimpleLogRecordProcessor(exporter);
const processor = new SimpleLogRecordProcessor({ exporter });
return { exporter, processor, logRecord };
};

Expand Down Expand Up @@ -142,7 +142,9 @@ describe('SimpleLogRecordProcessor', () => {
setTimeout(() => resolve('fromasync'), 1)
),
});
const processor = new SimpleLogRecordProcessor(testExporterWithDelay);
const processor = new SimpleLogRecordProcessor({
exporter: testExporterWithDelay,
});
const { logRecord } = setup(testExporterWithDelay, asyncResource);

processor.onEmit(logRecord);
Expand Down
Loading