Skip to content
Merged
Show file tree
Hide file tree
Changes from all 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
1 change: 1 addition & 0 deletions experimental/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ For notes on migrating to 2.x / 0.200.x see [the upgrade guide](doc/upgrade-to-2

* test(otlp-grpc-exporter-base): increase timeout in flaky test [#6042](https://github.com/open-telemetry/opentelemetry-js/pull/6042) @cjihrig
* test(sdk-node): use process.env consistently in tests [#6052](https://github.com/open-telemetry/opentelemetry-js/pull/6052) @cjihrig
* test(sdk-node): ensure process.env is cleaned up between tests [#6066](https://github.com/open-telemetry/opentelemetry-js/pull/6066) @cjihrig

## 0.207.0

Expand Down
62 changes: 23 additions & 39 deletions experimental/packages/opentelemetry-sdk-node/test/sdk.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,14 @@ describe('Node SDK', () => {
});

describe('Basic Registration', () => {
afterEach(function () {
delete process.env.OTEL_LOGS_EXPORTER;
delete process.env.OTEL_LOG_LEVEL;
delete process.env.OTEL_METRICS_EXPORTER;
delete process.env.OTEL_PROPAGATORS;
delete process.env.OTEL_TRACES_EXPORTER;
});

it('should not register more than the minimal SDK components', async () => {
// need to set these to none, since the deafult value is 'otlp'
process.env.OTEL_TRACES_EXPORTER = 'none';
Expand All @@ -148,8 +156,6 @@ describe('Node SDK', () => {
logsDelegate,
'logger provider should not have changed'
);
delete process.env.OTEL_TRACES_EXPORTER;
delete process.env.OTEL_METRICS_EXPORTER;
await sdk.shutdown();
});

Expand All @@ -169,7 +175,6 @@ describe('Node SDK', () => {
logLevel: DiagLogLevel.ERROR,
});

delete process.env.OTEL_LOG_LEVEL;
sdk.shutdown();
});

Expand Down Expand Up @@ -222,7 +227,6 @@ describe('Node SDK', () => {
const apiTracerProvider =
trace.getTracerProvider() as ProxyTracerProvider;
assert.ok(apiTracerProvider.getDelegate() instanceof NodeTracerProvider);
delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand Down Expand Up @@ -302,7 +306,6 @@ describe('Node SDK', () => {
assert.ok(metrics.getMeterProvider() instanceof MeterProvider);

await sdk.shutdown();
delete process.env.OTEL_TRACES_EXPORTER;
});

it('should register a meter provider if multiple readers are provided', async () => {
Expand Down Expand Up @@ -348,7 +351,6 @@ describe('Node SDK', () => {
assert.strictEqual(sharedState.metricCollectors.length, 2);

await sdk.shutdown();
delete process.env.OTEL_TRACES_EXPORTER;
});

it('should show deprecation warning when using metricReader option', async () => {
Expand Down Expand Up @@ -380,7 +382,6 @@ describe('Node SDK', () => {
assert.ok(metrics.getMeterProvider() instanceof MeterProvider);

await sdk.shutdown();
delete process.env.OTEL_TRACES_EXPORTER;
});

it('should not show deprecation warning when using metricReaders option', async () => {
Expand Down Expand Up @@ -412,7 +413,6 @@ describe('Node SDK', () => {
assert.ok(metrics.getMeterProvider() instanceof MeterProvider);

await sdk.shutdown();
delete process.env.OTEL_TRACES_EXPORTER;
});

it('should register a logger provider if a log record processor is provided', async () => {
Expand Down Expand Up @@ -442,7 +442,6 @@ describe('Node SDK', () => {
LoggerProvider
);
await sdk.shutdown();
delete process.env.OTEL_TRACES_EXPORTER;
});

it('should register a logger provider if multiple log record processors are provided', async () => {
Expand Down Expand Up @@ -527,7 +526,6 @@ describe('Node SDK', () => {
assert.deepStrictEqual(propagation.fields(), ['b3']);

await sdk.shutdown();
delete process.env.OTEL_PROPAGATORS;
});

it('should not register propagators OTEL_PROPAGATORS contains "none"', async () => {
Expand All @@ -542,7 +540,6 @@ describe('Node SDK', () => {
assert.deepStrictEqual(propagation.fields(), []);

await sdk.shutdown();
delete process.env.OTEL_PROPAGATORS;
});

it('should not register propagators OTEL_PROPAGATORS contains "none" alongside valid propagator', async () => {
Expand All @@ -557,7 +554,6 @@ describe('Node SDK', () => {
assert.deepStrictEqual(propagation.fields(), []);

await sdk.shutdown();
delete process.env.OTEL_PROPAGATORS;
});

it('should not register propagators OTEL_PROPAGATORS contains valid propagator but option is set to null', async () => {
Expand All @@ -573,7 +569,6 @@ describe('Node SDK', () => {
assert.deepStrictEqual(propagation.fields(), []);

await sdk.shutdown();
delete process.env.OTEL_PROPAGATORS;
});
});

Expand Down Expand Up @@ -853,6 +848,11 @@ describe('Node SDK', () => {
});

describe('configureServiceName', async () => {
afterEach(function () {
delete process.env.OTEL_RESOURCE_ATTRIBUTES;
delete process.env.OTEL_SERVICE_NAME;
});

it('should configure service name via config', async () => {
const sdk = new NodeSDK({
serviceName: 'config-set-name',
Expand All @@ -878,7 +878,6 @@ describe('Node SDK', () => {
assertServiceResource(resource, {
name: 'env-set-name',
});
delete process.env.OTEL_SERVICE_NAME;
await sdk.shutdown();
});

Expand All @@ -895,7 +894,6 @@ describe('Node SDK', () => {
assertServiceResource(resource, {
name: 'config-set-name',
});
delete process.env.OTEL_SERVICE_NAME;
await sdk.shutdown();
});

Expand All @@ -912,7 +910,6 @@ describe('Node SDK', () => {
name: 'resource-env-set-name',
instanceId: 'my-instance-id',
});
delete process.env.OTEL_RESOURCE_ATTRIBUTES;
await sdk.shutdown();
});

Expand All @@ -931,12 +928,16 @@ describe('Node SDK', () => {
name: 'config-set-name',
instanceId: 'my-instance-id',
});
delete process.env.OTEL_RESOURCE_ATTRIBUTES;
await sdk.shutdown();
});
});

describe('configureServiceInstanceId', async () => {
afterEach(function () {
delete process.env.OTEL_NODE_RESOURCE_DETECTORS;
delete process.env.OTEL_RESOURCE_ATTRIBUTES;
});

it('should configure service instance id via OTEL_RESOURCE_ATTRIBUTES env var', async () => {
process.env.OTEL_RESOURCE_ATTRIBUTES =
'service.instance.id=627cc493,service.name=my-service,service.namespace';
Expand All @@ -950,7 +951,6 @@ describe('Node SDK', () => {
name: 'my-service',
instanceId: '627cc493',
});
delete process.env.OTEL_RESOURCE_ATTRIBUTES;
await sdk.shutdown();
});

Expand All @@ -963,7 +963,6 @@ describe('Node SDK', () => {
await resource.waitForAsyncAttributes?.();

assertServiceInstanceIdIsUUID(resource);
delete process.env.OTEL_NODE_RESOURCE_DETECTORS;
await sdk.shutdown();
});

Expand Down Expand Up @@ -1239,6 +1238,8 @@ describe('Node SDK', () => {

afterEach(() => {
stubLogger.reset();
delete process.env.OTEL_METRIC_EXPORT_INTERVAL;
delete process.env.OTEL_METRIC_EXPORT_TIMEOUT;
delete process.env.OTEL_METRICS_EXPORTER;
delete process.env.OTEL_EXPORTER_OTLP_METRICS_PROTOCOL;
delete process.env.OTEL_EXPORTER_METRICS_PROTOCOL;
Expand Down Expand Up @@ -1418,7 +1419,6 @@ describe('Node SDK', () => {

it('should use otlp with http/protobuf and and use user defined flushing settings', async () => {
process.env.OTEL_METRICS_EXPORTER = 'otlp';
process.env.OTEL_EXPORTER_OTLP_METRICS_PROTOCOL = 'http/protobuf';
process.env.OTEL_METRIC_EXPORT_INTERVAL = '200';
process.env.OTEL_METRIC_EXPORT_TIMEOUT = '150';
delete process.env.OTEL_EXPORTER_OTLP_METRICS_PROTOCOL;
Expand All @@ -1439,8 +1439,6 @@ describe('Node SDK', () => {
150
);
await sdk.shutdown();
delete process.env.OTEL_METRIC_EXPORT_INTERVAL;
delete process.env.OTEL_METRIC_EXPORT_TIMEOUT;
});

it('should use prometheus if that is set ', async () => {
Expand Down Expand Up @@ -1477,6 +1475,9 @@ describe('Node SDK', () => {
stubLoggerError = Sinon.stub(diag, 'warn');
});
afterEach(() => {
delete process.env.OTEL_EXPORTER_OTLP_PROTOCOL;
delete process.env.OTEL_EXPORTER_OTLP_TRACES_PROTOCOL;
delete process.env.OTEL_TRACES_EXPORTER;
stubLoggerError.restore();
});

Expand Down Expand Up @@ -1538,7 +1539,6 @@ describe('Node SDK', () => {
assert.ok(listOfProcessors.length === 1);
assert.ok(listOfProcessors[0] instanceof BatchSpanProcessor);
assert.ok(listOfProcessors[0]['_exporter'] instanceof OTLPTraceExporter);
delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand All @@ -1558,7 +1558,6 @@ describe('Node SDK', () => {
assert.ok(
listOfProcessors[0]['_exporter'] instanceof ConsoleSpanExporter
);
delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand All @@ -1574,8 +1573,6 @@ describe('Node SDK', () => {
assert.ok(
listOfProcessors[0]['_exporter'] instanceof OTLPGrpcTraceExporter
);
delete process.env.OTEL_TRACES_EXPORTER;
delete process.env.OTEL_EXPORTER_OTLP_TRACES_PROTOCOL;
await sdk.shutdown();
});

Expand All @@ -1592,8 +1589,6 @@ describe('Node SDK', () => {
assert.ok(
listOfProcessors[0]['_exporter'] instanceof OTLPGrpcTraceExporter
);
delete process.env.OTEL_TRACES_EXPORTER;
delete process.env.OTEL_EXPORTER_OTLP_TRACES_PROTOCOL;
await sdk.shutdown();
});

Expand All @@ -1614,7 +1609,6 @@ describe('Node SDK', () => {
'tracer provider should not have changed'
);

delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand Down Expand Up @@ -1653,7 +1647,6 @@ describe('Node SDK', () => {
listOfProcessors[0]['_exporter'] instanceof OTLPProtoTraceExporter
);

delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand All @@ -1672,7 +1665,6 @@ describe('Node SDK', () => {
'Unable to set up trace exporter(s) due to invalid exporter and/or protocol values.'
);

delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand All @@ -1688,8 +1680,6 @@ describe('Node SDK', () => {
assert.ok(listOfProcessors[0] instanceof BatchSpanProcessor);
assert.ok(listOfProcessors[0]['_exporter'] instanceof ZipkinExporter);

delete process.env.OTEL_TRACES_EXPORTER;
delete process.env.OTEL_EXPORTER_OTLP_TRACES_PROTOCOL;
await sdk.shutdown();
});

Expand All @@ -1709,8 +1699,6 @@ describe('Node SDK', () => {
listOfProcessors[1]['_exporter'] instanceof OTLPGrpcTraceExporter
);

delete process.env.OTEL_TRACES_EXPORTER;
delete process.env.OTEL_EXPORTER_OTLP_TRACES_PROTOCOL;
await sdk.shutdown();
});

Expand All @@ -1730,7 +1718,6 @@ describe('Node SDK', () => {
assert.ok(
listOfProcessors[1]['_exporter'] instanceof OTLPProtoTraceExporter
);
delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand All @@ -1746,7 +1733,6 @@ describe('Node SDK', () => {
assert.ok(
listOfProcessors[0]['_exporter'] instanceof ConsoleSpanExporter
);
delete process.env.OTEL_TRACES_EXPORTER;
await sdk.shutdown();
});

Expand All @@ -1763,8 +1749,6 @@ describe('Node SDK', () => {
assert.ok(
listOfProcessors[0]['_exporter'] instanceof ConsoleSpanExporter
);
delete process.env.OTEL_TRACES_EXPORTER;
delete process.env.OTEL_EXPORTER_OTLP_TRACES_PROTOCOL;
await sdk.shutdown();
});
});
Expand Down