Skip to content
Open
1 change: 1 addition & 0 deletions experimental/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ For notes on migrating to 2.x / 0.200.x see [the upgrade guide](doc/upgrade-to-2

* test(otlp-transformer): add metrics transform benchmark [#6628](https://github.com/open-telemetry/opentelemetry-js/pull/6628) @pichlermarc
* refactor(opentelemetry-exporter-prometheus): do not call enforcePrometheusNamingConvention() multiple times per metric [#6636](https://github.com/open-telemetry/opentelemetry-js/pull/6636) @cjihrig
* refactor(sdk-node): replace usage of `NodeTracerProvider` for `BasicTracerProvider` in SDK start [#6640](https://github.com/open-telemetry/opentelemetry-js/pull/6640) @david-luna
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reminder to move this up to the top Unreleased section when close to merging.


## 0.215.0

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ import * as grpc from '@grpc/grpc-js';
import { GrpcTesterClient } from './proto/ts/fixtures/grpc-test.client';
import {
InMemorySpanExporter,
NodeTracerProvider,
BasicTracerProvider,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-node';
} from '@opentelemetry/sdk-trace-base';
import * as protoLoader from '@grpc/proto-loader';
import * as path from 'path';
import * as assert from 'assert';
Expand Down Expand Up @@ -138,7 +138,7 @@ describe('#grpc-protobuf', () => {
let client: GrpcTesterClient;
let server: grpc.Server;
let contextManager: ContextManager;
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@
import type { Attributes } from '@opentelemetry/api';
import { context, propagation, SpanKind, trace } from '@opentelemetry/api';
import { W3CTraceContextPropagator } from '@opentelemetry/core';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { AsyncHooksContextManager } from '@opentelemetry/context-async-hooks';
import type { ContextManager } from '@opentelemetry/api';
import type { ReadableSpan } from '@opentelemetry/sdk-trace-base';
import {
BasicTracerProvider,
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
Expand Down Expand Up @@ -574,7 +574,7 @@ export const runTests = (

const ClientServerValidationTest = (
method: (typeof methodList)[0],
provider: NodeTracerProvider,
provider: BasicTracerProvider,
checkSpans = true,
attributesValidation?: {
serverAttributes?: Attributes;
Expand Down Expand Up @@ -618,7 +618,7 @@ export const runTests = (

const ErrorValidationTest = (
method: (typeof methodList)[0],
provider: NodeTracerProvider,
provider: BasicTracerProvider,
checkSpans = true,
attributesValidation?: {
serverAttributes?: Attributes;
Expand Down Expand Up @@ -674,7 +674,7 @@ export const runTests = (

const runTestWithAttributeValidation = (
method: (typeof methodList)[0],
provider: NodeTracerProvider,
provider: BasicTracerProvider,
checkSpans = true,
attributesValidation: {
serverAttributes?: Attributes;
Expand All @@ -692,7 +692,7 @@ export const runTests = (

const runTest = (
method: (typeof methodList)[0],
provider: NodeTracerProvider,
provider: BasicTracerProvider,
checkSpans = true
) => {
ClientServerValidationTest(method, provider, checkSpans);
Expand All @@ -708,7 +708,7 @@ export const runTests = (
method: (typeof methodList)[0],
key: string,
errorCode: number,
provider: NodeTracerProvider
provider: BasicTracerProvider
) => {
it(`should raise an error for client/server rootSpans: method=${method.methodName}, status=${key}`, async () => {
const expectEmpty = memoryExporter.getFinishedSpans();
Expand Down Expand Up @@ -819,7 +819,7 @@ export const runTests = (
};

describe('enable()', () => {
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
beforeEach(() => {
Expand Down Expand Up @@ -864,7 +864,7 @@ export const runTests = (
});

describe('disable()', () => {
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
beforeEach(() => {
Expand Down Expand Up @@ -896,7 +896,7 @@ export const runTests = (
});

describe('Test filtering requests using metadata', () => {
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
beforeEach(() => {
Expand Down Expand Up @@ -926,7 +926,7 @@ export const runTests = (
});

describe('Test filtering requests using options', () => {
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
const checkSpans: { [key: string]: boolean } = {
Expand Down Expand Up @@ -1004,7 +1004,7 @@ export const runTests = (
});

describe('Test capturing metadata', () => {
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ import {
DiagConsoleLogger,
INVALID_SPAN_CONTEXT,
} from '@opentelemetry/api';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import {
BasicTracerProvider,
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
Expand Down Expand Up @@ -90,7 +90,7 @@ const hostname = 'localhost';
const pathname = '/test';
const serverName = 'my.server.name';
const memoryExporter = new InMemorySpanExporter();
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
instrumentation.setTracerProvider(provider);
Expand Down
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Perhaps also get the sdk-trace-node usages in the instr-http and instr-grpc README.md files?
  • Can the sdk-trace-node devDep be removed from those package.json files?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Perhaps also get the sdk-trace-node usages in the instr-http and instr-grpc README.md files?

commit 48a35b7

  • Can the sdk-trace-node devDep be removed from those package.json files?

yes, thanks for pointing it. commit 78aeba6

Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
InMemoryMetricExporter,
MeterProvider,
} from '@opentelemetry/sdk-metrics';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { BasicTracerProvider } from '@opentelemetry/sdk-trace-base';
import {
ATTR_ERROR_TYPE,
ATTR_HTTP_REQUEST_METHOD,
Expand Down Expand Up @@ -50,7 +50,7 @@ const serverPort = 22346;
const protocol = 'http';
const hostname = 'localhost';
const pathname = '/test';
const tracerProvider = new NodeTracerProvider();
const tracerProvider = new BasicTracerProvider();
const metricsMemoryExporter = new InMemoryMetricExporter(
AggregationTemporality.DELTA
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
import type { Span } from '@opentelemetry/api';
import { context, SpanKind, propagation } from '@opentelemetry/api';
import { AsyncHooksContextManager } from '@opentelemetry/context-async-hooks';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import {
BasicTracerProvider,
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
Expand Down Expand Up @@ -41,7 +41,7 @@ describe('Packages', () => {
context.disable();
});
describe('get', () => {
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
instrumentation.setTracerProvider(provider);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ import type {
SpanKind,
} from '@opentelemetry/api';
import { context } from '@opentelemetry/api';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import type { Sampler, SamplingResult } from '@opentelemetry/sdk-trace-base';
import {
BasicTracerProvider,
InMemorySpanExporter,
SamplingDecision,
SimpleSpanProcessor,
Expand Down Expand Up @@ -56,7 +56,7 @@ import * as http from 'http';
import { AsyncHooksContextManager } from '@opentelemetry/context-async-hooks';

const memoryExporter = new InMemorySpanExporter();
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
sampler,
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
import type { Span } from '@opentelemetry/api';
import { context, SpanKind, propagation } from '@opentelemetry/api';
import { AsyncHooksContextManager } from '@opentelemetry/context-async-hooks';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import {
BasicTracerProvider,
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
Expand Down Expand Up @@ -41,7 +41,7 @@ describe('Packages', () => {
context.disable();
});
describe('get', () => {
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
instrumentation.setTracerProvider(provider);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ import { urlToHttpOptions } from 'url';
import { HttpInstrumentation } from '../../src/http';
import { assertSpan } from '../utils/assertSpan';
import * as utils from '../utils/utils';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import {
BasicTracerProvider,
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
Expand Down Expand Up @@ -119,7 +119,7 @@ describe('HttpInstrumentation Integration tests', () => {
});
});

const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
instrumentation.setTracerProvider(provider);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ import type { Socket } from 'net';
import { assertSpan } from '../utils/assertSpan';
import { urlToHttpOptions } from 'url';
import * as utils from '../utils/utils';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import {
BasicTracerProvider,
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
Expand Down Expand Up @@ -119,7 +119,7 @@ describe('HttpsInstrumentation Integration tests', () => {
done();
});
});
const provider = new NodeTracerProvider({
const provider = new BasicTracerProvider({
spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
});
instrumentation.setTracerProvider(provider);
Expand Down
1 change: 0 additions & 1 deletion experimental/packages/opentelemetry-sdk-node/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ export * as contextBase from '@opentelemetry/api';
export * as core from '@opentelemetry/core';
export * as logs from '@opentelemetry/sdk-logs';
export * as metrics from '@opentelemetry/sdk-metrics';
export * as node from '@opentelemetry/sdk-trace-node';
Comment thread
trentm marked this conversation as resolved.
export * as resources from '@opentelemetry/resources';
export * as tracing from '@opentelemetry/sdk-trace-base';
/* eslint-enable no-restricted-syntax */
Expand Down
20 changes: 12 additions & 8 deletions experimental/packages/opentelemetry-sdk-node/src/sdk.ts
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,14 @@ import {
ConsoleMetricExporter,
PeriodicExportingMetricReader,
} from '@opentelemetry/sdk-metrics';
import type { SpanProcessor } from '@opentelemetry/sdk-trace-base';
import { BatchSpanProcessor } from '@opentelemetry/sdk-trace-base';
import type { NodeTracerConfig } from '@opentelemetry/sdk-trace-node';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import type {
SpanProcessor,
TracerConfig,
Comment thread
trentm marked this conversation as resolved.
} from '@opentelemetry/sdk-trace-base';
import {
BasicTracerProvider,
BatchSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
import { ATTR_SERVICE_NAME } from '@opentelemetry/semantic-conventions';
import type { NodeSDKConfiguration } from './types';
import {
Expand All @@ -64,7 +68,7 @@ import {
} from './utils';

type TracerProviderConfig = {
tracerConfig: NodeTracerConfig;
tracerConfig: TracerConfig;
spanProcessors: SpanProcessor[];
};

Expand Down Expand Up @@ -160,7 +164,7 @@ export class NodeSDK {

private _autoDetectResources: boolean;

private _tracerProvider?: NodeTracerProvider;
private _tracerProvider?: BasicTracerProvider;
private _loggerProvider?: LoggerProvider;
private _meterProvider?: MeterProvider;
private _serviceName?: string;
Expand Down Expand Up @@ -207,7 +211,7 @@ export class NodeSDK {
configuration.spanProcessor ||
configuration.spanProcessors
) {
const tracerProviderConfig: NodeTracerConfig = {};
const tracerProviderConfig: TracerConfig = {};

if (configuration.sampler) {
tracerProviderConfig.sampler = configuration.sampler;
Expand Down Expand Up @@ -346,7 +350,7 @@ export class NodeSDK {

// Only register if there is a span processor
if (spanProcessors.length > 0) {
this._tracerProvider = new NodeTracerProvider({
this._tracerProvider = new BasicTracerProvider({
...this._configuration,
resource: this._resource,
meterProvider: sdkMetricsEnabled ? this._meterProvider : undefined,
Expand Down
Loading
Loading