OpenCensus Instana Trace Exporter
OpenCensus Instana Trace Exporter allows the user to send collected traces with OpenCensus Node.js to Instana.
Instana is a distributed
tracing system. Instana provides AI Powered Application and Infrastructure Monitoring, allowing you to deliver Faster With Confidence, and automatic Analysis and Optimization.
The library is in alpha stage and the API is subject to change.
Installation
Install OpenCensus Instana Exporter with:
npm install @opencensus/nodejs
npm install @opencensus/exporter-instana
Usage
To use Instana as your exporter, first ensure that you have an Instana agent running on your system and reporting to your environment. The Instana OpenCensus exporter directly communicates with the Instana agent in order to transmit data to Instana.
const tracing = require('@opencensus/nodejs');
const instana = require('@opencensus/exporter-instana');
tracing.start({
exporter: new instana.InstanaTraceExporter()
});
Useful links
0.0.12 - 2019-05-13
- Add
defaultAttributes
config to Tracer.start(config)
- http-instrumentation: Handle incoming requests with long request url path.
- Add Cumulative (
DoubleCumulative
, LongCumulative
, , DerivedDoubleCumulative
, DerivedLongCumulative
) APIs. - Export
TracerBase
as a separate @opencensus/nodejs-base
package. - Fix(deps): update dependency nyc to v14.
- Fix(deps): update dependency grpc to ~1.20.0
- chore(package): update handlebar to avoid security vulnabirity.
- Move propagation-binaryformat package to dependencies.
- Fix(deps): update dependency @grpc/proto-loader to ^0.5.0
- http-instrumentation: fix propagation errors when using Expect header.
- Consolidate Span and RootSpan to allow Spans to recursively have children.
This release has a breaking change. Please test your code accordingly after upgrading.
- removing Tracer's
startChildSpan(name?: string, kind?: types.SpanKind)
interface
Old code
// Multi argument interface
const span = tracer.startChildSpan('my-span', types.SpanKind.SERVER);
// Or options object interface
const span = tracer.startChildSpan({
name: 'my-span',
kind: types.SpanKind.SERVER
});
New code
// Only options object interface is supported
const span = tracer.startChildSpan({
name: 'my-span',
kind: types.SpanKind.SERVER
});