Skip to content

AIDK API Reference / aidk-kernel / TelemetryProvider

Interface: TelemetryProvider ​

Defined in: packages/kernel/src/telemetry.ts:87

Interface for telemetry providers (e.g., OpenTelemetry, DataDog).

Implement this interface to integrate with your observability platform.

Example ​

typescript
import { trace, metrics } from '@opentelemetry/api';

const otelProvider: TelemetryProvider = {
  startTrace(name) { return trace.getTracer('aidk').startSpan(name).spanContext().traceId; },
  startSpan(name) { return trace.getTracer('aidk').startSpan(name); },
  // ... implement other methods
};

Telemetry.setProvider(otelProvider);

Methods ​

endTrace() ​

ts
endTrace(): void;

Defined in: packages/kernel/src/telemetry.ts:95

End the current trace.

Returns ​

void


getCounter() ​

ts
getCounter(
   name: string, 
   unit?: string, 
   description?: string): Counter;

Defined in: packages/kernel/src/telemetry.ts:97

Get or create a counter metric.

Parameters ​

ParameterType
namestring
unit?string
description?string

Returns ​

Counter


getHistogram() ​

ts
getHistogram(
   name: string, 
   unit?: string, 
   description?: string): Histogram;

Defined in: packages/kernel/src/telemetry.ts:99

Get or create a histogram metric.

Parameters ​

ParameterType
namestring
unit?string
description?string

Returns ​

Histogram


recordError() ​

ts
recordError(error: any): void;

Defined in: packages/kernel/src/telemetry.ts:93

Record an error in the current trace/span.

Parameters ​

ParameterType
errorany

Returns ​

void


startSpan() ​

ts
startSpan(name: string): Span;

Defined in: packages/kernel/src/telemetry.ts:91

Start a new span within the current trace.

Parameters ​

ParameterType
namestring

Returns ​

Span


startTrace() ​

ts
startTrace(name: string): string;

Defined in: packages/kernel/src/telemetry.ts:89

Start a new trace and return its ID.

Parameters ​

ParameterType
namestring

Returns ​

string

Released under the MIT License.