Document updated on Oct 24, 2022
Exporting traces to Jaeger
Jaeger is an open source, end-to-end distributed tracing system that allows you to monitor and troubleshoot transactions in complex distributed systems.
The Opencensus exporter allows you export data to Jaeger. Enabling it only requires you to add the jaeger exporter in the opencensus module.
The following configuration snippet sends data to your Jaeger:
{
"extra_config":{
"telemetry/opencensus": {
"sample_rate": 100,
"reporting_period": 0,
"exporters": {
"jaeger": {
"endpoint": "http://192.168.99.100:14268/api/traces",
"service_name":"krakend",
"buffer_max_count": 1000
}
}
}
}
}
As with all OpenCensus exporters, you can add optional settings in the telemetry/opencensus level:
Fields of "telemetry/opencensus"
enabled_layers- Lets you specify what data you want to export. All layers are enabled by default unless you declare this section.
backendboolean- Reports the activity between KrakenD and your servicesDefaults to
false pipeboolean- Reports the activity at the beginning of the proxy layer. It gives a more detailed view of the internals of the pipe between end-users and KrakenD, having into account merging of different backends.Defaults to
false routerboolean- Reports the activity between end-users and KrakenDDefaults to
false
reporting_periodinteger- The number of seconds passing between reports. If duration is less than or equal to zero, it enables the default behavior of each exporter.Defaults to
0 sample_rateinteger- A number between 0 (no requests at all) and 100 (all requests) representing the percentage of sampled requests you want to send to the exporter. Sampling the 100% of the requests is generally discouraged when the relationship between traffic and dedicated resources is sparse.Defaults to
0
Then, the exporters key must contain an jaeger entry with the following properties:
Fields of "telemetry/opencensus": { "exporters":{} }
jaegerobjectbuffer_max_countinteger- Total number of traces to buffer in memory
endpoint* string- The full URL including port indicating where your Jaeger is, e.g.,
http://jaeger:14268/api/tracesExample:"http://192.168.99.100:14268/api/traces" service_name* string- The service name registered in JaegerExample:
"krakend"
