1.0.3 • Published 6 years ago

superagent-opentracing v1.0.3

Weekly downloads
3
License
MIT
Repository
github
Last release
6 years ago

superagent-opentracing

Opentracing instrumentation for superagent requests

Installation

npm install -g superagent-opentracing

Usage

By default the globalTracer is usedfor all requests, headers are injected into all requests for extraction by other services. This library does not handle extraction.

Standalone tracing

const tracing = require('superagent-opentracing');
const request = require('superagent');

request.get('http://google.com')
    .use(tracing())
    .end((response) => {
        console.log('Response', response);
    });

Trace as child

const tracing = require('superagent-opentracing');
const request = require('superagent');
const opentracing = require('opentracing');

const tracer = opentracing.globalTracer();
const span = tracer.startSpan('some.request');
request.get('http://google.com')
    .use(tracing(span))
    .end((err, response) => {
        console.log('Response', response);
        if(err){
            span.setTag(opentracing.Tags.ERROR, true);
            span.log({'event': 'error', 'error.object': err, 'message': err.message, 'stack': err.stack});
        }
        span.finish();
    })