UNPKG

elastic-apm-node-opentracing

Version:
51 lines (32 loc) 1.56 kB
# Elastic APM Node.js OpenTracing Bridge An [OpenTracing](https://opentracing.io/) bridge for the [Elastic APM Node.js Agent](https://github.com/elastic/apm-agent-nodejs). [![npm](https://img.shields.io/npm/v/elastic-apm-node-opentracing.svg)](https://www.npmjs.com/package/elastic-apm-node-opentracing) [![Test status](https://github.com/elastic/apm-agent-nodejs-opentracing/workflows/Test/badge.svg)](https://github.com/elastic/apm-agent-nodejs-opentracingactions) ## Prerequisites This module have [`elastic-apm-node`](https://www.npmjs.com/package/elastic-apm-node) as a peer dependency. Version 2.10.0 or higher of the Elastic APM Agent is required in order to use this module. ## Installation ``` npm install elastic-apm-node-opentracing --save ``` ## Usage ```js // Start the Elastic APM agent at the VERY top of the first file loaded // in your app const agent = require('elastic-apm-node').start() const Tracer = require('elastic-apm-node-opentracing') // Pass the Elastic APM agent as an argument to the OpenTracing tracer const tracer = new Tracer(agent) const span = tracer.startSpan('my-first-span') // ... do some work ... span.finish() ``` ## API ### `tracer = new Tracer(agent)` This module exposes a `Tracer` class which is OpenTracing compatible. When instantiating the `Tracer` object, an instance of the Elastic APM Node.js Agent must be provided as its only argument. For details about the `tracer` API, see the [`opentracing-javascript` API docs](https://opentracing-javascript.surge.sh/). ## License [Apache-2.0](LICENSE)