diff --git a/packages/opentelemetry-exporter-collector/README.md b/packages/opentelemetry-exporter-collector/README.md index 30ed47caa48..f03ad15e5a5 100644 --- a/packages/opentelemetry-exporter-collector/README.md +++ b/packages/opentelemetry-exporter-collector/README.md @@ -38,7 +38,7 @@ const { CollectorExporter } = require('@opentelemetry/exporter-collector'); const collectorOptions = { serviceName: 'basic-service', - url: '' // url is optional and can be omitted - default is http://localhost:55678/v1/trace + url: '' // url is optional and can be omitted - default is http://localhost:55678 }; const provider = new BasicTracerProvider(); diff --git a/packages/opentelemetry-exporter-collector/src/CollectorExporterBase.ts b/packages/opentelemetry-exporter-collector/src/CollectorExporterBase.ts index 1d93318aa46..096a5d3b305 100644 --- a/packages/opentelemetry-exporter-collector/src/CollectorExporterBase.ts +++ b/packages/opentelemetry-exporter-collector/src/CollectorExporterBase.ts @@ -31,7 +31,6 @@ export interface CollectorExporterConfigBase { } const DEFAULT_SERVICE_NAME = 'collector-exporter'; -const DEFAULT_COLLECTOR_URL = 'http://localhost:55678/v1/trace'; /** * Collector Exporter abstract base class @@ -51,7 +50,7 @@ export abstract class CollectorExporterBase< */ constructor(config: T = {} as T) { this.serviceName = config.serviceName || DEFAULT_SERVICE_NAME; - this.url = config.url || DEFAULT_COLLECTOR_URL; + this.url = this.defaultURL(config.url); if (typeof config.hostName === 'string') { this.hostName = config.hostName; } @@ -135,4 +134,5 @@ export abstract class CollectorExporterBase< onSuccess: () => void, onError: (error: CollectorExporterError) => void ): void; + abstract defaultURL(url: string | undefined): string; } diff --git a/packages/opentelemetry-exporter-collector/src/platform/browser/CollectorExporter.ts b/packages/opentelemetry-exporter-collector/src/platform/browser/CollectorExporter.ts index 28cabeb5f0f..e854d358c11 100644 --- a/packages/opentelemetry-exporter-collector/src/platform/browser/CollectorExporter.ts +++ b/packages/opentelemetry-exporter-collector/src/platform/browser/CollectorExporter.ts @@ -24,6 +24,8 @@ import * as collectorTypes from '../../types'; export type CollectorExporterConfig = CollectorExporterConfigBase; +const DEFAULT_COLLECTOR_URL = 'http://localhost:55678/v1/trace'; + /** * Collector Exporter for Web */ @@ -38,6 +40,10 @@ export class CollectorExporter extends CollectorExporterBase< window.removeEventListener('unload', this.shutdown); } + defaultURL(url: string | undefined) { + return url || DEFAULT_COLLECTOR_URL; + } + sendSpans( spans: ReadableSpan[], onSuccess: () => void, diff --git a/packages/opentelemetry-exporter-collector/src/platform/node/CollectorExporter.ts b/packages/opentelemetry-exporter-collector/src/platform/node/CollectorExporter.ts index 639d373685f..1207ae2fccb 100644 --- a/packages/opentelemetry-exporter-collector/src/platform/node/CollectorExporter.ts +++ b/packages/opentelemetry-exporter-collector/src/platform/node/CollectorExporter.ts @@ -29,6 +29,8 @@ import { toCollectorExportTraceServiceRequest } from '../../transform'; import { GRPCQueueItem, TraceServiceClient } from './types'; import { removeProtocol } from './util'; +const DEFAULT_COLLECTOR_URL = 'http://localhost:55678'; + /** * Collector Exporter Config for Node */ @@ -135,4 +137,8 @@ export class CollectorExporter extends CollectorExporterBase< }); } } + + defaultURL(url: string | undefined): string { + return url || DEFAULT_COLLECTOR_URL; + } }