3.0.0 • Published 6 years ago
traci v3.0.0
traci
hapi open tracing plugin
Options
tracer- instance of OpenTracing.Tracer, defaults to OpenTracing.Tracer base classonRequest- array of properties to select from the hapirequestobject and include in the hapi_request span log. Defaults to['headers', 'info']onPostAuth- array of properties to select from the hapirequestobject and include in the hapi_auth span log. Defaults to['auth']onPreHandler- array of properties to select from the hapirequestobject and include in the hapi_handler span log. Defaults to['route.settings.handler.name']onPreResponse- array of properties to select from the hapirequestobject and include in the hapi_response span log. Defaults to['info']
Properties
Decorates the hapi server object with .tracer, which is an instance of the intialized Tracer class. This can be used to create spans and reports. To access a parent span of one of the following types you can use the new request.span(type) method to return the current span of whatever type you care about. For example, to create a new span in a request handler using the parent handler span you can invoke request.span as follows:
handler: (request, h) => {
const span = request.server.tracer.startSpan('some_action', { childOf: request.span('handler').context() });
const something = await someAction();
span.finish();
return something;
}The following spans are created:
hapi_requesthapi_authhapi_handlerhapi_responsehapi_log
Inside of a handler you can obtain the parent span by invoking request.span()