Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

Traceo SDK for Node.js

Library for integration with the Traceo Platform.

The Traceo platform offers the ability to collect and visualize data from OpenTelemetry. OpenTelemetry, also known as OTel for short, is a vendor-neutral open-source Observability framework for instrumenting, generating, collecting, and exporting telemetry data such as traces, metrics, logs. Docs.

How Traceo use OTel instruments?

By using custom metrics and spans exporters (logs in near future). After receiving data from Otel instruments, the data is successively sent to the Traceo platform, where it is aggregated and visualized.

Installation

To install this SDK add this package to your pom.xml like below:

<dependency>
    <groupId>org.traceo</groupId>
    <artifactId>traceo-sdk-opentelemetry</artifactId>
    <version>1.0.0</version>
</dependency>

or to build.gradle

dependencies {
    implementation 'org.traceo.sdk:traceo-sdk-opentelemetry:1.0.0'
}

TIP: Remember to init TraceoClient before using this package.

Metrics

To use the exporter for metrics you need to use TraceoMetricsExporter like below:

PeriodicMetricReaderBuilder readerBuilder=PeriodicMetricReader
        .builder(new TraceoMetricsExporter()) //use traceo exporter here
        .setInterval(Duration.ofMillis(500)); //optional

        MetricReader reader=readerBuilder.build();

        MeterProvider meterProvider=SdkMeterProvider.builder()
        .setResource(Resource.getDefault())
        .registerMetricReader(reader)
        .build();

// use meterProvider to collect metrics

After using TraceoMetricsExporter Traceo Platform will receive every metrics payload from OpenTelemetry.

Spans

To use the exporter for spans you need to use TraceoSpansExporter like below:

SdkTracerProvider tracerProvider=SdkTracerProvider.builder()
        .addSpanProcessor(
        BatchSpanProcessor
        .builder(new TraceoSpansExporter()) // use traceo exporter here
        .build()
        )
        .build();

        OpenTelemetrySdk openTelemetry=OpenTelemetrySdk.builder()
        .setTracerProvider(tracerProvider)
        .build();

        Tracer tracer=openTelemetry.getTracerProvider().get("your-instrumentation-name");

// use tracer to instrument spans

After using TraceoSpansExporter Traceo Platform will receive every span payload from OpenTelemetry.

Support

Feel free to create Issues, Pull Request and Discussion. If you want to contact with the developer working on this package click here.