Menu
Grafana Cloud

Grafana OpenTelemetry distribution for Java configuration

The open source Grafana OpenTelemetry distribution for Java is fully compatible with upstream OpenTelemetry instrumentation for Java.

Configuration

Grafana OpenTelemetry distribution for Java is configurable with all the system properties or environment variables from the upstream OpenTelemetry SDK auto-configuration.

The distribution sets all exporters to otlp by default, including the logs exporter.

Metrics used

Application Observability needs and uses the following metrics send by the distribution:

MetricUsage
process.runtime.jvm.system.cpu.utilizationCPU utilization on the JVM Runtime page
process.runtime.jvm.memory.usageMemory usage on the JVM Runtime page
process.runtime.jvm.memory.limitMemory limit on the JVM Runtime page
process.runtime.jvm.gc.durationGarbage collection duration on the JVM Runtime page
process.runtime.jvm.classes.current_loadedCurrent load on the JVM Runtime page
process.runtime.jvm.threads.countThread count on the JVM Runtime page
db.client.connections.usageJDBC dashboard
db.client.connections.maxJDBC dashboard
db.client.connections.pending_requestsJDBC dashboard
r2dbc.pool.acquiredReactive Database example
r2dbc.pool.max.allocatedReactive Database example
r2dbc.pool.pendingReactive Database example
kafka.producer.record_error_totalKafka example
mongodb.driver.pool.waitqueuesizeMongoDB example
mongodb.driver.pool.checkedoutMongoDB example

Data saver

Application Observability uses a specific selection of metrics and ingesting all OpenTelemetry metrics can increase cost.

If you want the distribution to only send metrics that Application Observability uses and reduce Metrics costs in Grafana Cloud, set the following environment variable:

shell
export GRAFANA_OTEL_APPLICATION_OBSERVABILITY_METRICS=true

Note

If you have enabled data saver and want to send manually created metrics, set the metric name to application.