nice-grpc-opentelemetry
TypeScript icon, indicating that this package has built-in type declarations

0.1.14 • Public • Published

nice-grpc-opentelemetry npm version

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

Package Sidebar

Install

npm i nice-grpc-opentelemetry

Weekly Downloads

4,286

Version

0.1.14

License

MIT

Unpacked Size

37.3 kB

Total Files

35

Last publish

Collaborators

  • aikoven