From 2f442c8fb5e986a911d95d52a0e1036021d5ac30 Mon Sep 17 00:00:00 2001 From: legendecas Date: Fri, 29 Oct 2021 16:07:16 +0800 Subject: [PATCH] fixup! add a new positional parameter options --- .../opentelemetry-api-metrics/src/NoopMeterProvider.ts | 2 +- .../opentelemetry-api-metrics/src/api/metrics.ts | 4 ++-- .../opentelemetry-api-metrics/src/types/Meter.ts | 4 ---- .../src/types/MeterProvider.ts | 3 ++- .../opentelemetry-exporter-otlp-grpc/test/helper.ts | 2 +- .../opentelemetry-exporter-otlp-http/test/helper.ts | 2 +- .../opentelemetry-exporter-otlp-proto/test/helper.ts | 2 +- .../test/PrometheusExporter.test.ts | 3 +-- .../src/instrumentation.ts | 8 ++------ .../src/MeterProvider.ts | 8 ++++---- .../opentelemetry-sdk-metrics-base/test/Meter.test.ts | 3 +-- .../test/MeterProvider.test.ts | 10 +++++----- 12 files changed, 21 insertions(+), 30 deletions(-) diff --git a/experimental/packages/opentelemetry-api-metrics/src/NoopMeterProvider.ts b/experimental/packages/opentelemetry-api-metrics/src/NoopMeterProvider.ts index ee4826eb1e..97628d7122 100644 --- a/experimental/packages/opentelemetry-api-metrics/src/NoopMeterProvider.ts +++ b/experimental/packages/opentelemetry-api-metrics/src/NoopMeterProvider.ts @@ -23,7 +23,7 @@ import { NOOP_METER } from './NoopMeter'; * for all calls to `getMeter` */ export class NoopMeterProvider implements MeterProvider { - getMeter(_name?: string, _options?: MeterOptions): Meter { + getMeter(_name: string, _version?: string, _options?: MeterOptions): Meter { return NOOP_METER; } } diff --git a/experimental/packages/opentelemetry-api-metrics/src/api/metrics.ts b/experimental/packages/opentelemetry-api-metrics/src/api/metrics.ts index 297df6bfe9..3e5fb6015a 100644 --- a/experimental/packages/opentelemetry-api-metrics/src/api/metrics.ts +++ b/experimental/packages/opentelemetry-api-metrics/src/api/metrics.ts @@ -73,8 +73,8 @@ export class MetricsAPI { /** * Returns a meter from the global meter provider. */ - public getMeter(name: string, options?: MeterOptions): Meter { - return this.getMeterProvider().getMeter(name, options); + public getMeter(name: string, version?: string, options?: MeterOptions): Meter { + return this.getMeterProvider().getMeter(name, version, options); } /** Remove the global meter provider */ diff --git a/experimental/packages/opentelemetry-api-metrics/src/types/Meter.ts b/experimental/packages/opentelemetry-api-metrics/src/types/Meter.ts index c410f328eb..cd30fe8f4c 100644 --- a/experimental/packages/opentelemetry-api-metrics/src/types/Meter.ts +++ b/experimental/packages/opentelemetry-api-metrics/src/types/Meter.ts @@ -31,10 +31,6 @@ import { ObservableResult } from './ObservableResult'; * An interface describes additional metadata of a meter. */ export interface MeterOptions { - /** - * The version of the meter or instrumentation library - */ - version?: string; /** * The schemaUrl of the meter or instrumentation library */ diff --git a/experimental/packages/opentelemetry-api-metrics/src/types/MeterProvider.ts b/experimental/packages/opentelemetry-api-metrics/src/types/MeterProvider.ts index 8859230d8e..448f10b17b 100644 --- a/experimental/packages/opentelemetry-api-metrics/src/types/MeterProvider.ts +++ b/experimental/packages/opentelemetry-api-metrics/src/types/MeterProvider.ts @@ -25,8 +25,9 @@ export interface MeterProvider { * schemaUrl pair is not already created. * * @param name The name of the meter or instrumentation library. + * @param version The version of the meter or instrumentation library. * @param options The options of the meter or instrumentation library. * @returns Meter A Meter with the given name and version */ - getMeter(name: string, options?: MeterOptions): Meter; + getMeter(name: string, version?: string, options?: MeterOptions): Meter; } diff --git a/experimental/packages/opentelemetry-exporter-otlp-grpc/test/helper.ts b/experimental/packages/opentelemetry-exporter-otlp-grpc/test/helper.ts index bc2a020675..48325a12d4 100644 --- a/experimental/packages/opentelemetry-exporter-otlp-grpc/test/helper.ts +++ b/experimental/packages/opentelemetry-exporter-otlp-grpc/test/helper.ts @@ -39,7 +39,7 @@ const meterProvider = new metrics.MeterProvider({ }), }); -const meter = meterProvider.getMeter('default', { version: '0.0.1' }); +const meter = meterProvider.getMeter('default', '0.0.1'); const traceIdArr = [ 31, diff --git a/experimental/packages/opentelemetry-exporter-otlp-http/test/helper.ts b/experimental/packages/opentelemetry-exporter-otlp-http/test/helper.ts index dd06efd68b..5befa3515f 100644 --- a/experimental/packages/opentelemetry-exporter-otlp-http/test/helper.ts +++ b/experimental/packages/opentelemetry-exporter-otlp-http/test/helper.ts @@ -41,7 +41,7 @@ const meterProvider = new metrics.MeterProvider({ }), }); -const meter = meterProvider.getMeter('default', { version: '0.0.1' }); +const meter = meterProvider.getMeter('default', '0.0.1'); if (typeof Buffer === 'undefined') { (window as any).Buffer = { diff --git a/experimental/packages/opentelemetry-exporter-otlp-proto/test/helper.ts b/experimental/packages/opentelemetry-exporter-otlp-proto/test/helper.ts index 6ddbc4d9c3..f76b8619b0 100644 --- a/experimental/packages/opentelemetry-exporter-otlp-proto/test/helper.ts +++ b/experimental/packages/opentelemetry-exporter-otlp-proto/test/helper.ts @@ -39,7 +39,7 @@ const meterProvider = new metrics.MeterProvider({ }), }); -const meter = meterProvider.getMeter('default', { version: '0.0.1' }); +const meter = meterProvider.getMeter('default', '0.0.1'); export function mockCounter(): metrics.Metric & Counter { const name = 'int-counter'; diff --git a/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts b/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts index a1a0d7dae8..9860d82eed 100644 --- a/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts +++ b/experimental/packages/opentelemetry-exporter-prometheus/test/PrometheusExporter.test.ts @@ -228,8 +228,7 @@ describe('PrometheusExporter', () => { meterProvider = new MeterProvider({ interval: Math.pow(2, 31) - 1, }); - meter = meterProvider.getMeter('test-prometheus', { - version: '1', + meter = meterProvider.getMeter('test-prometheus', '1', { exporter, }); done(); diff --git a/experimental/packages/opentelemetry-instrumentation/src/instrumentation.ts b/experimental/packages/opentelemetry-instrumentation/src/instrumentation.ts index cdcdd76eeb..56779a5e64 100644 --- a/experimental/packages/opentelemetry-instrumentation/src/instrumentation.ts +++ b/experimental/packages/opentelemetry-instrumentation/src/instrumentation.ts @@ -53,9 +53,7 @@ export abstract class InstrumentationAbstract this._tracer = trace.getTracer(instrumentationName, instrumentationVersion); - this._meter = metrics.getMeter(instrumentationName, { - version: instrumentationVersion, - }); + this._meter = metrics.getMeter(instrumentationName, instrumentationVersion); } /* Api to wrap instrumented method */ @@ -79,9 +77,7 @@ export abstract class InstrumentationAbstract public setMeterProvider(meterProvider: MeterProvider) { this._meter = meterProvider.getMeter( this.instrumentationName, - { - version: this.instrumentationVersion, - } + this.instrumentationVersion ); } diff --git a/experimental/packages/opentelemetry-sdk-metrics-base/src/MeterProvider.ts b/experimental/packages/opentelemetry-sdk-metrics-base/src/MeterProvider.ts index d4d1df5ee4..8e18e6a4b1 100644 --- a/experimental/packages/opentelemetry-sdk-metrics-base/src/MeterProvider.ts +++ b/experimental/packages/opentelemetry-sdk-metrics-base/src/MeterProvider.ts @@ -48,15 +48,15 @@ export class MeterProvider implements api.MeterProvider { * * @returns Meter A Meter with the given name and version */ - getMeter(name: string, config?: MeterConfig): Meter { - const key = `${name}@${config?.version ?? ''}:${config?.schemaUrl ?? ''}`; + getMeter(name: string, version?: string, config?: MeterConfig): Meter { + const key = `${name}@${version ?? ''}:${config?.schemaUrl ?? ''}`; if (!this._meters.has(key)) { this._meters.set( key, new Meter({ name, - version: config?.version, - // @ts-expect-error ts(2345) TODO: upgrade @opentelemetry/core + version, + // @ts-expect-error ts(2345) TODO: upgrade @opentelemetry/core InstrumentationLibrary definition schemaUrl: config?.schemaUrl }, Object.assign({}, this._config, config)) ); diff --git a/experimental/packages/opentelemetry-sdk-metrics-base/test/Meter.test.ts b/experimental/packages/opentelemetry-sdk-metrics-base/test/Meter.test.ts index c97b67e33b..e89545f7ad 100644 --- a/experimental/packages/opentelemetry-sdk-metrics-base/test/Meter.test.ts +++ b/experimental/packages/opentelemetry-sdk-metrics-base/test/Meter.test.ts @@ -1366,8 +1366,7 @@ describe('Meter', () => { }); it('should allow custom processor', () => { - const customMeter = new MeterProvider().getMeter('custom-processor', { - version: '*', + const customMeter = new MeterProvider().getMeter('custom-processor', '*', { processor: new CustomProcessor(), }); assert.throws(() => { diff --git a/experimental/packages/opentelemetry-sdk-metrics-base/test/MeterProvider.test.ts b/experimental/packages/opentelemetry-sdk-metrics-base/test/MeterProvider.test.ts index fcb7d3222d..b7bb7bd42f 100644 --- a/experimental/packages/opentelemetry-sdk-metrics-base/test/MeterProvider.test.ts +++ b/experimental/packages/opentelemetry-sdk-metrics-base/test/MeterProvider.test.ts @@ -58,20 +58,20 @@ describe('MeterProvider', () => { it('should return the same Meter instance with same name & version', () => { const provider = new MeterProvider(); - const meter1 = provider.getMeter('meter1', { version: 'ver1' }); - const meter2 = provider.getMeter('meter1', { version: 'ver1' }); + const meter1 = provider.getMeter('meter1', 'ver1'); + const meter2 = provider.getMeter('meter1', 'ver1'); assert.deepEqual(meter1, meter2); }); it('should return different Meter instance with different name or version', () => { const provider = new MeterProvider(); - const meter1 = provider.getMeter('meter1', { version: 'ver1' }); + const meter1 = provider.getMeter('meter1', 'ver1'); const meter2 = provider.getMeter('meter1'); assert.notEqual(meter1, meter2); - const meter3 = provider.getMeter('meter2', { version: 'ver2' }); - const meter4 = provider.getMeter('meter3', { version: 'ver2' }); + const meter3 = provider.getMeter('meter2', 'ver2'); + const meter4 = provider.getMeter('meter3', 'ver2'); assert.notEqual(meter3, meter4); }); });