0.1.14 • Published 2 months ago
nice-grpc-opentelemetry v0.1.14
nice-grpc-opentelemetry
OpenTelemetry instrumentation for nice-grpc. Currently provides only traces.
Installation
npm install nice-grpc-opentelemetry
Usage
Attach middleware as the first one on the server:
import {createServer} from 'nice-grpc';
import {openTelemetryServerMiddleware} from 'nice-grpc-opentelemetry';
const server = createServer()
.use(openTelemetryServerMiddleware())
.use(/* ... other middleware */);
Attach middleware as the first one on the client:
import {createClientFactory} from 'nice-grpc'; // or 'nice-grpc-web'
import {openTelemetryClientMiddleware} from 'nice-grpc-opentelemetry';
const clientFactory = createClientFactory()
.use(openTelemetryClientMiddleware())
.use(/* ... other middleware */);
const client = clientFactory.create(/* ... */);
Traces
This library generates spans according to Semantic conventions for RPC spans with an addition of custom attributes:
Attribute | Type | Description | Examples |
---|---|---|---|
rpc.grpc.status_text | string | The name of the status of the gRPC request | INVALID_ARGUMENT |