Skip to content

createOpenTelemetryMiddleware

createOpenTelemetryMiddleware(config): Promise<Middleware>

Defined in: packages/middleware/src/opentelemetry.ts:351

Create OpenTelemetry middleware.

Provides distributed tracing with span creation, context propagation, and metrics export via OpenTelemetry.

Note: This middleware requires optional OpenTelemetry packages to be installed:

  • @opentelemetry/api
  • @opentelemetry/sdk-trace-base
  • @opentelemetry/exporter-trace-otlp-http
  • @opentelemetry/resources
  • @opentelemetry/semantic-conventions

Install with:

Terminal window
npm install @opentelemetry/api @opentelemetry/sdk-trace-base \
@opentelemetry/exporter-trace-otlp-http @opentelemetry/resources \
@opentelemetry/semantic-conventions

OpenTelemetryConfig = {}

OpenTelemetry configuration

Promise<Middleware>

Promise that resolves to OpenTelemetry middleware

Error if OpenTelemetry packages are not installed

import { createOpenTelemetryMiddleware } from 'ai.matey.middleware';
const otel = await createOpenTelemetryMiddleware({
serviceName: 'my-ai-service',
endpoint: 'http://localhost:4318/v1/traces',
samplingRate: 1.0
});
bridge.use(otel);