{"version":3,"file":"OTLPMetricExporter.mjs","names":[],"sources":["../../../src/platform/node/OTLPMetricExporter.ts"],"sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { type MeterProvider } from '@opentelemetry/api';\nimport type { OTLPMetricExporterOptions } from '@opentelemetry/exporter-metrics-otlp-http';\nimport { OTLPMetricExporterBase } from '@opentelemetry/exporter-metrics-otlp-http';\nimport type { OTLPExporterNodeConfigBase } from '@opentelemetry/otlp-exporter-base/node-http';\nimport {\n  MetricsExporterMetricsHelper,\n  ProtobufMetricsSerializer,\n} from '@opentelemetry/otlp-transformer';\nimport {\n  convertLegacyHttpOptions,\n  createOtlpHttpExportDelegate,\n  createOtlpHttpExporterMetrics,\n} from '@opentelemetry/otlp-exporter-base/node-http';\n\nimport { OTEL_COMPONENT_TYPE_VALUE_OTLP_HTTP_METRIC_EXPORTER } from '../../semconv';\n\nexport class OTLPMetricExporter extends OTLPMetricExporterBase {\n  private readonly _url: string | undefined;\n  constructor(config?: OTLPExporterNodeConfigBase & OTLPMetricExporterOptions) {\n    super(\n      createOtlpHttpExportDelegate(\n        convertLegacyHttpOptions(config ?? {}, 'METRICS', 'v1/metrics', {\n          'Content-Type': 'application/x-protobuf',\n        }),\n        ProtobufMetricsSerializer,\n        OTEL_COMPONENT_TYPE_VALUE_OTLP_HTTP_METRIC_EXPORTER,\n        MetricsExporterMetricsHelper,\n        config?.selfObsMeterProvider\n      ),\n      config\n    );\n    this._url = config?.url;\n  }\n\n  /**\n   * Sets the meter provider to use to collect metrics for the exporter itself.\n   * @experimental This method is experimental and is subject to breaking changes in minor releases.\n   */\n  setSelfObsMeterProvider(meterProvider: MeterProvider) {\n    this.setMetrics(\n      createOtlpHttpExporterMetrics(\n        OTEL_COMPONENT_TYPE_VALUE_OTLP_HTTP_METRIC_EXPORTER,\n        MetricsExporterMetricsHelper,\n        this._url,\n        meterProvider\n      )\n    );\n  }\n}\n"],"mappings":";;;;;AAqBA,IAAa,qBAAb,cAAwC,uBAAuB;CAC7D;CACA,YAAY,QAAiE;EAC3E,MACE,6BACE,yBAAyB,UAAU,CAAC,GAAG,WAAW,cAAc,EAC9D,gBAAgB,yBAClB,CAAC,GACD,2BACA,qDACA,8BACA,QAAQ,oBACV,GACA,MACF;EACA,KAAK,OAAO,QAAQ;CACtB;;;;;CAMA,wBAAwB,eAA8B;EACpD,KAAK,WACH,8BACE,qDACA,8BACA,KAAK,MACL,aACF,CACF;CACF;AACF"}