-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
proposal: mapping of stable JVM metrics as top-level attributes #264
Comments
@elastic/obs-ds-intake-services I'd like to have your input on this idea, as it impacts the implementation choices we make for elastic/kibana#174445 |
SGTM. What's the actual work that's needed for jvm.memory.*? The semconv format is quite different from what we have now e.g. |
The metrics names themselves are not translated and are copied as-is, so it's mostly a matter of making sure that the otel attributes are written as top-level fields instead of the
The current UI implementation is somehow working with the 1.x version of the otel agent that relies on a previous version of the metrics. As a follow-up improvement we could maybe translate the current format used by the |
The |
With the new ingestion path through OTel collector metrics will be mapped in OTel-native way |
Some of the JVM metrics are now stable and are part of the semantic conventions.
For example, the
jvm.thread.count
metric (semconv)jvm.thread.count
jvm.thread.daemon
stored aslabels.jvm_thread_daemon
jvm.thread.state
stored aslabels.jvm_thread_state
In the future, those otel metrics should be mapped as top-level attributes, but a generic solution won't be available short term.
However, we already have the need to build dashboards that rely on those stable metrics (elastic/kibana#174445), which means that whenever we have to rely on the metrics attributes that are mapped in
labels.*
the dashboards won't be future-proof and will break when those will be mapped as top-level.For example this will happen with
jvm.memory.*
metrics as we have to split heap/non-heap memory (semconv spec) and the breakdown is currently stored inlabels.jvm_memory_type
.So here the proposal would be to store attributes as top-level attributes, but only limited to the scope of stable JVM metrics as those won't change in the future.
The text was updated successfully, but these errors were encountered: