Skip to content

Commit d31a671

Browse files
committed
feat(api): Integrate @opentelemetry/api-logs package into @opentelemetry/api as experimental
1 parent 74d434e commit d31a671

File tree

98 files changed

+5690
-5368
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

98 files changed

+5690
-5368
lines changed

api/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ All notable changes to this project will be documented in this file.
77

88
### :boom: Breaking Change
99

10+
* feat(api): Integrate @opentelemetry/api-logs package into @opentelemetry/api as experimental [#4862](https://github.com/open-telemetry/opentelemetry-js/pull/4862) @hectorhdzg
11+
1012
### :rocket: (Enhancement)
1113

1214
* feat(api): improve isValidSpanId, isValidTraceId performance [#5714](https://github.com/open-telemetry/opentelemetry-js/pull/5714) @seemk

api/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@
1414
},
1515
"exports": {
1616
".": {
17+
"types": "./build/src/index.d.ts",
1718
"module": "./build/esm/index.js",
1819
"esnext": "./build/esnext/index.js",
19-
"types": "./build/src/index.d.ts",
2020
"default": "./build/src/index.js"
2121
},
2222
"./experimental": {
23+
"types": "./build/src/experimental/index.d.ts",
2324
"module": "./build/esm/experimental/index.js",
2425
"esnext": "./build/esnext/experimental/index.js",
25-
"types": "./build/src/experimental/index.d.ts",
2626
"default": "./build/src/experimental/index.js"
2727
}
2828
},
@@ -34,7 +34,7 @@
3434
"lint:fix": "eslint . --ext .ts --fix",
3535
"lint": "eslint . --ext .ts",
3636
"test:browser": "karma start --single-run",
37-
"test": "nyc mocha 'test/**/*.test.ts'",
37+
"test": "nyc mocha test/**/*.test.ts",
3838
"test:webworker": "karma start karma.worker.js --single-run",
3939
"cycle-check": "dpdm --exit-code circular:1 src/index.ts",
4040
"version": "node ../scripts/version-update.js",

api/src/experimental/index.ts

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,22 @@
2121

2222
export { wrapTracer, SugaredTracer } from './trace/SugaredTracer';
2323
export type { SugaredSpanOptions } from './trace/SugaredOptions';
24+
25+
// Logs Experimental API
26+
export type { Logger } from './logs/types/Logger';
27+
export type { LoggerProvider } from './logs/types/LoggerProvider';
28+
export { SeverityNumber } from './logs/types/LogRecord';
29+
export type { LogAttributes, LogBody, LogRecord } from './logs/types/LogRecord';
30+
export type { LoggerOptions } from './logs/types/LoggerOptions';
31+
export type { AnyValue, AnyValueMap } from './logs/types/AnyValue';
32+
export { NOOP_LOGGER, NoopLogger } from './logs/NoopLogger';
33+
export {
34+
NOOP_LOGGER_PROVIDER,
35+
NoopLoggerProvider,
36+
} from './logs/NoopLoggerProvider';
37+
export { ProxyLogger } from './logs/ProxyLogger';
38+
export { ProxyLoggerProvider } from './logs/ProxyLoggerProvider';
39+
40+
import { LogsAPI } from './logs/api/logs';
41+
export { LogsAPI };
42+
export const logs = LogsAPI.getInstance();

api/src/internal/global-utils.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import { TextMapPropagator } from '../propagation/TextMapPropagator';
2222
import type { TracerProvider } from '../trace/tracer_provider';
2323
import { VERSION } from '../version';
2424
import { isCompatible } from './semver';
25+
import { LoggerProvider } from '../experimental';
2526

2627
const major = VERSION.split('.')[0];
2728
const GLOBAL_OPENTELEMETRY_API_KEY = Symbol.for(
@@ -101,4 +102,5 @@ type OTelGlobalAPI = {
101102
context?: ContextManager;
102103
metrics?: MeterProvider;
103104
propagation?: TextMapPropagator;
105+
logs?: LoggerProvider;
104106
};
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616

1717
import * as assert from 'assert';
18-
import { NoopLogger } from '../../src/NoopLogger';
19-
import { NoopLoggerProvider } from '../../src/NoopLoggerProvider';
18+
import { NoopLogger } from '../../../src/experimental/logs/NoopLogger';
19+
import { NoopLoggerProvider } from '../../../src/experimental/logs/NoopLoggerProvider';
2020

2121
describe('NoopLoggerProvider', () => {
2222
it('should not crash', () => {
Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,16 @@
1515
*/
1616

1717
import * as assert from 'assert';
18-
import { SeverityNumber } from '../../src';
19-
import { NoopLogger } from '../../src/NoopLogger';
20-
import { NoopLoggerProvider } from '../../src/NoopLoggerProvider';
18+
import {
19+
SeverityNumber,
20+
NoopLogger,
21+
NoopLoggerProvider,
22+
} from '../../../src/experimental/';
2123

2224
describe('NoopLogger', () => {
2325
it('constructor should not crash', () => {
2426
const logger = new NoopLoggerProvider().getLogger('test-noop');
25-
assert.ok(logger instanceof NoopLogger);
27+
assert(logger instanceof NoopLogger);
2628
});
2729

2830
it('calling emit should not crash', () => {

doc/upgrade-to-2.x.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ The OpenTelemetry JS SIG is responsible for numerous packages, all published to
5252
| @opentelemetry/sdk-trace-web | 2.0.0 |
5353
| @opentelemetry/shim-opentracing | 2.0.0 |
5454
| @opentelemetry/api-events | 0.200.0 |
55-
| @opentelemetry/api-logs | 0.200.0 |
5655
| @opentelemetry/exporter-logs-otlp-grpc | 0.200.0 |
5756
| @opentelemetry/exporter-logs-otlp-http | 0.200.0 |
5857
| @opentelemetry/exporter-logs-otlp-proto | 0.200.0 |
@@ -107,7 +106,7 @@ Important: Both of these changes ([email protected], dropping old TypeScript vers
107106
108107
## 💥 ES2022 compilation target
109108

110-
The **compilation target for transpiled TypeScript has been raised to ES2022** (from ES2017) for all packages (except `@opentelemetry/api`, `@opentelemetry/api-logs`, `@opentelemetry/api-events`, and `@opentelemetry/semantic-conventions`).
109+
The **compilation target for transpiled TypeScript has been raised to ES2022** (from ES2017) for all packages (except `@opentelemetry/api`, `@opentelemetry/api-events`, and `@opentelemetry/semantic-conventions`).
111110

112111
For Browser usage, this drops support for any browser versions that do not support ES2022 features.
113112
For Node.js usage, this already follows from the new minimum supported Node.js versions mentioned above.

e2e-tests/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
},
1616
"dependencies": {
1717
"@opentelemetry/api": "^1.3.0",
18-
"@opentelemetry/api-logs": "0.202.0",
1918
"@opentelemetry/exporter-logs-otlp-proto": "0.202.0",
2019
"@opentelemetry/exporter-metrics-otlp-proto": "0.202.0",
2120
"@opentelemetry/exporter-trace-otlp-proto": "0.202.0",

e2e-tests/test.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import {
2727
trace,
2828
metrics,
2929
} from '@opentelemetry/api';
30-
import { logs } from '@opentelemetry/api-logs';
30+
import { logs } from '@opentelemetry/api/experimental';
3131

3232
// Enable diagnostic logging (optional)
3333
diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.INFO);

experimental/examples/logs/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
*/
1616

1717
import { DiagConsoleLogger, DiagLogLevel, diag } from '@opentelemetry/api';
18-
import { logs, SeverityNumber } from '@opentelemetry/api-logs';
18+
import { logs, SeverityNumber } from '@opentelemetry/api/experimental';
1919
import {
2020
LoggerProvider,
2121
ConsoleLogRecordExporter,

0 commit comments

Comments
 (0)