Connectum API Reference / @connectum/otel / client-interceptor / createOtelClientInterceptor
Function: createOtelClientInterceptor()
createOtelClientInterceptor(
options):Interceptor
Defined in: packages/otel/src/client-interceptor.ts:58
Creates a ConnectRPC interceptor that instruments outgoing RPC calls with OpenTelemetry tracing and/or metrics.
The interceptor follows OpenTelemetry semantic conventions for RPC:
- Creates client spans with standard RPC attributes
- Injects trace context into outgoing request headers for propagation
- Records call duration, request size, and response size metrics
- Handles both unary and streaming calls
Parameters
options
Configuration options for the client interceptor
Returns
Interceptor
A ConnectRPC Interceptor function
Example
typescript
import { createOtelClientInterceptor } from '@connectum/otel';
import { createConnectTransport } from '@connectrpc/connect-node';
const transport = createConnectTransport({
baseUrl: 'http://localhost:5000',
interceptors: [createOtelClientInterceptor({
serverAddress: 'localhost',
serverPort: 5000,
filter: ({ service }) => !service.includes("Health"),
})],
});