opentelemetry-java-instrumentation
opentelemetry-java-instrumentation copied to clipboard
feat: instruments com.twitter.util-stats
Instruments twitter's util-stats to complement existing finagle tracing observability in finagle-http.
Explicitly handled, is a mapping most closely according to twitter-util-stats' own PrometheusExporter
as Prometheus is the closest relative to otel represented in the stack (AFAICT), but with the additional metadata of "hierarchical names" carried forward to otel via a designated label. This is done because many names -- "hierarchical" names in particular -- contain dimensional values but which aren't mapped to twitter-util-stats labels directly, and so their otel counterparts lose fidelity when mapped without them.
The result is a more granular set of metrics, but which remain largely constrained by the nature of the source library where high cardinality of names and labels is still discouraged to a great extent.
Explicitly omitted: translation of twitter-util-stat's Stat
metric type. These are equivalent to otel's deprecated Summary
metric type and are therefore not a priority for the present iteration. As this is effectively a shift to Histograms as stand-in, compatibility/accuracy testing relative to the Stat metrics, will be lower than if the translation were 1:1.