Open telemetry for collecting the traces and spans
Sequence number
Sample configurations
{
"useAPM": true,
"apmConfig": {
"apiToken": "your-api-token",
"endpoint": "https://api.apmtool.com/traces"
}
}
{
"useAPM": false,
"otCollectorConfig": {
"endpoint": "https://otcollector.example.com:4317"
}
}
Class prototype
classDiagram
class Configuration {
+useAPM: boolean
+apmConfig: APMConfig
+otCollectorConfig: OTCollectorConfig
}
class APMConfig {
+apiToken: string
+endpoint: string
}
class OTCollectorConfig {
+endpoint: string
}
class ExporterFactory {
+createExporter(configuration: Configuration): Exporter
}
class APMExporter {
+constructor(apmConfig: APMConfig)
+exportSpans(spans: SpanData): void
}
class OpenTelemetryCollectorExporter {
+constructor(otCollectorConfig: OTCollectorConfig)
+exportSpans(spans: SpanData): void
}
class TraceManager {
-exporter: Exporter
+constructor(configuration: Configuration)
+startSpan(spanName: string): Span
+endSpan(span: Span): void
}
class Span {
+start(): void
+end(): void
}
class TracerProvider {
+addSpanProcessor(processor: SpanProcessor): void
}
class SpanProcessor {
+exportSpans(spans: SpanData): void
}