Skip to content

Commit 491ed96

Browse files
feat(sdk-logs)!: Removed deprecated LoggerProvider#addLogRecordProcessor() (#5764)
1 parent e18a6c8 commit 491ed96

File tree

8 files changed

+42
-65
lines changed

8 files changed

+42
-65
lines changed

experimental/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ For notes on migrating to 2.x / 0.200.x see [the upgrade guide](doc/upgrade-to-2
88

99
### :boom: Breaking Changes
1010

11+
* feat(sdk-logs)!: Removed deprecated LoggerProvider#addLogRecordProcessor() [#5764](https://github.com/open-telemetry/opentelemetry-js/pull/5764) @svetlanabrennan
12+
1113
### :rocket: Features
1214

1315
### :bug: Bug Fixes

experimental/examples/logs/index.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,13 @@ import {
2525
// Optional and only needed to see the internal diagnostic logging (during development)
2626
diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.DEBUG);
2727

28-
const loggerProvider = new LoggerProvider();
29-
loggerProvider.addLogRecordProcessor(
30-
new SimpleLogRecordProcessor(new ConsoleLogRecordExporter())
31-
);
28+
const loggerProvider = new LoggerProvider({
29+
processors: [
30+
new SimpleLogRecordProcessor(
31+
new ConsoleLogRecordExporter()
32+
)
33+
],
34+
});
3235

3336
logs.setGlobalLoggerProvider(loggerProvider);
3437

experimental/packages/exporter-logs-otlp-grpc/README.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,9 @@ const collectorOptions = {
3939
};
4040

4141
const loggerExporter = new OTLPLogExporter(collectorOptions);
42-
const loggerProvider = new LoggerProvider();
43-
44-
loggerProvider.addLogRecordProcessor(
45-
new BatchLogRecordProcessor(loggerExporter)
46-
);
42+
const loggerProvider = new LoggerProvider({
43+
processors: [new BatchRecordProcessor(loggerExporter)]
44+
});
4745

4846
['SIGINT', 'SIGTERM'].forEach(signal => {
4947
process.on(signal, () => loggerProvider.shutdown().catch(console.error));

experimental/packages/exporter-logs-otlp-http/README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@ const collectorOptions = {
3737
concurrencyLimit: 1, // an optional limit on pending requests
3838
};
3939
const logExporter = new OTLPLogExporter(collectorOptions);
40-
const loggerProvider = new LoggerProvider();
41-
42-
loggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter));
40+
const loggerProvider = new LoggerProvider({
41+
processors: [new BatchRecordProcessor(logExporter)]
42+
});
4343

4444
const logger = loggerProvider.getLogger('default', '1.0.0');
4545
// Emit a log
@@ -66,9 +66,9 @@ const collectorOptions = {
6666
concurrencyLimit: 1, // an optional limit on pending requests
6767
};
6868
const logExporter = new OTLPLogExporter(collectorOptions);
69-
const loggerProvider = new LoggerProvider();
70-
71-
loggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter));
69+
const loggerProvider = new LoggerProvider({
70+
processors: [new BatchRecordProcessor(logExporter)]
71+
});
7272

7373
const logger = loggerProvider.getLogger('default', '1.0.0');
7474
// Emit a log

experimental/packages/exporter-logs-otlp-proto/README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,11 @@ const collectorOptions = {
3131
}, //an optional object containing custom headers to be sent with each request will only work with http
3232
};
3333

34-
const logProvider = new LoggerProvider({resource: resourceFromAttributes({'service.name': 'testApp'})});
3534
const logExporter = new OTLPLogExporter(collectorOptions);
36-
logProvider.addLogRecordProcessor(new SimpleLogRecordProcessor(exporter));
35+
const logProvider = new LoggerProvider({
36+
resource: resourceFromAttributes({'service.name': 'testApp'}),
37+
processors: [new SimpleLogRecordProcessor(logExporter)]
38+
});
3739

3840
const logger = logProvider.getLogger('test_log_instrumentation');
3941

experimental/packages/sdk-logs/README.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,10 @@ const {
3131
} = require('@opentelemetry/sdk-logs');
3232

3333
// To start a logger, you first need to initialize the Logger provider.
34-
const loggerProvider = new LoggerProvider();
35-
// Add a processor to export log record
36-
loggerProvider.addLogRecordProcessor(
37-
new SimpleLogRecordProcessor(new ConsoleLogRecordExporter())
38-
);
34+
// and add a processor to export log record
35+
const loggerProvider = new LoggerProvider({
36+
processors: [new SimpleLogRecordProcessor(new ConsoleLogRecordExporter())]
37+
});
3938

4039
// To create a log record, you first need to get a Logger instance
4140
const logger = loggerProvider.getLogger('default');

experimental/packages/sdk-logs/src/LoggerProvider.ts

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@ import type { LoggerProviderConfig } from './types';
2323
import { Logger } from './Logger';
2424
import { loadDefaultConfig, reconfigureLimits } from './config';
2525
import { LoggerProviderSharedState } from './internal/LoggerProviderSharedState';
26-
import { LogRecordProcessor } from './LogRecordProcessor';
27-
import { MultiLogRecordProcessor } from './MultiLogRecordProcessor';
2826

2927
export const DEFAULT_LOGGER_NAME = 'unknown';
3028

@@ -75,32 +73,6 @@ export class LoggerProvider implements logsAPI.LoggerProvider {
7573
return this._sharedState.loggers.get(key)!;
7674
}
7775

78-
/**
79-
* @deprecated add your processors in the constructors instead.
80-
*
81-
* Adds a new {@link LogRecordProcessor} to this logger.
82-
* @param processor the new LogRecordProcessor to be added.
83-
*/
84-
public addLogRecordProcessor(processor: LogRecordProcessor) {
85-
if (this._sharedState.registeredLogRecordProcessors.length === 0) {
86-
// since we might have enabled by default a batchProcessor, we disable it
87-
// before adding the new one
88-
this._sharedState.activeProcessor
89-
.shutdown()
90-
.catch(err =>
91-
diag.error(
92-
'Error while trying to shutdown current log record processor',
93-
err
94-
)
95-
);
96-
}
97-
this._sharedState.registeredLogRecordProcessors.push(processor);
98-
this._sharedState.activeProcessor = new MultiLogRecordProcessor(
99-
this._sharedState.registeredLogRecordProcessors,
100-
this._sharedState.forceFlushTimeoutMillis
101-
);
102-
}
103-
10476
/**
10577
* Notifies all registered LogRecordProcessor to flush any buffered data.
10678
*

experimental/packages/sdk-logs/test/common/LoggerProvider.test.ts

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,22 @@ describe('LoggerProvider', () => {
5252
assert.ok(processor instanceof NoopLogRecordProcessor);
5353
});
5454

55+
it('should add logRecord processor', () => {
56+
const logRecordProcessor = new NoopLogRecordProcessor();
57+
const provider = new LoggerProvider({
58+
processors: [logRecordProcessor],
59+
});
60+
const sharedState = provider['_sharedState'];
61+
assert.ok(
62+
sharedState.activeProcessor instanceof MultiLogRecordProcessor
63+
);
64+
assert.strictEqual(sharedState.activeProcessor.processors.length, 1);
65+
assert.strictEqual(
66+
sharedState.activeProcessor.processors[0],
67+
logRecordProcessor
68+
);
69+
});
70+
5571
it('should have default resource if not pass', () => {
5672
const provider = new LoggerProvider();
5773
const { resource } = provider['_sharedState'];
@@ -201,21 +217,6 @@ describe('LoggerProvider', () => {
201217
});
202218
});
203219

204-
describe('addLogRecordProcessor', () => {
205-
it('should add logRecord processor', () => {
206-
const provider = new LoggerProvider();
207-
const sharedState = provider['_sharedState'];
208-
const logRecordProcessor = new NoopLogRecordProcessor();
209-
provider.addLogRecordProcessor(logRecordProcessor);
210-
assert.ok(sharedState.activeProcessor instanceof MultiLogRecordProcessor);
211-
assert.strictEqual(sharedState.activeProcessor.processors.length, 1);
212-
assert.strictEqual(
213-
sharedState.activeProcessor.processors[0],
214-
logRecordProcessor
215-
);
216-
});
217-
});
218-
219220
describe('.forceFlush()', () => {
220221
it('should call forceFlush on all registered log record processors', done => {
221222
sinon.restore();

0 commit comments

Comments
 (0)