Package Exports
- @azure/monitor-opentelemetry-exporter
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@azure/monitor-opentelemetry-exporter) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Azure Monitor OpenTelemetry Exporter client library for JavaScript
Getting started
This exporter package assumes your application is already instrumented with the OpenTelemetry SDK. Once you are ready to export OpenTelemetry data, you can add this exporter to your application.
Install the package
npm install @azure/monitor-opentelemetry-exporter
Prerequisites
You must have an Azure subscription and a Application Insights workspace to use this package. If you are using this package in a Node.js application, then use Node.js 8.x or higher.
Distributed Tracing
Add the exporter to your existing OpenTelemetry tracer provider (NodeTracerProvider
/ BasicTracerProvider
)
const { AzureMonitorTraceExporter } = require("@azure/monitor-opentelemetry-exporter");
const { NodeTracerProvider } = require("@opentelemetry/node");
const { BatchSpanProcessor } = require("@opentelemetry/tracing");
// Use your existing provider
const provider = new NodeTracerProvider({
plugins: {
https: {
// Ignore Application Insights Ingestion Server
ignoreOutgoingUrls: [new RegExp(/dc.services.visualstudio.com/i)]
}
}
});
provider.register();
// Create an exporter instance
const exporter = new AzureMonitorTraceExporter({
logger: provider.logger,
instrumentationKey: "ikey"
});
// Add the exporter to the provider
provider.addSpanProcessor(
new BatchSpanProcessor(exporter, {
bufferTimeout: 15000,
bufferSize: 1000
})
);
Metrics
Coming Soon
Logs
Coming Soon
Examples
Coming soon // TODO: Update this with link to samples when we have some
Key concepts
For more information on the OpenTelemetry project, please review the OpenTelemetry Specifications.
Troubleshooting
Enable debug logging
You can enable debug logging by changing the logging level of your provider.
const provider = new NodeTracerProvider({
logLevel: LogLevel.DEBUG,
plugins: {
https: {
// Ignore Application Insights Ingestion Server
ignoreOutgoingUrls: [new RegExp(/dc.services.visualstudio.com/i)]
}
}
});
Next steps
This exporter is made to be used with the OpenTelemetry JS.
Plugin Registry
To see if a plugin has already been made for a library you are using, please check out the OpenTelemetry Registry.
If you cannot your library in the registry, feel free to suggest a new plugin request at opentelemetry-js-contrib
.
Contributing
If you'd like to contribute to this library, please read the contributing guide to learn more about how to build and test the code.