Skip to content

Recording multiple values for the same attributeΒ #13332

@davisjose19

Description

@davisjose19

Describe the bug

I was using the otel java agent version 2.12.0 - and since today morning my application started generated WARN logs every minute :

[otel.javaagent 2025-02-17 15:56:31:842 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.memory.used has recorded multiple values for the same attributes: {jvm.memory.pool.name="CodeHeap 'non-nmethods'", jvm.memory.type="non_heap"}
[otel.javaagent 2025-02-17 15:56:31:842 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.memory.committed has recorded multiple values for the same attributes: {jvm.memory.pool.name="CodeHeap 'non-nmethods'", jvm.memory.type="non_heap"}
[otel.javaagent 2025-02-17 15:56:31:843 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.memory.limit has recorded multiple values for the same attributes: {jvm.memory.pool.name="CodeHeap 'non-nmethods'", jvm.memory.type="non_heap"}
[otel.javaagent 2025-02-17 15:56:31:843 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.memory.used_after_last_gc has recorded multiple values for the same attributes: {jvm.memory.pool.name="Tenured Gen", jvm.memory.type="heap"}
[otel.javaagent 2025-02-17 15:56:31:843 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.memory.used_after_last_gc has recorded multiple values for the same attributes: {jvm.memory.pool.name="Eden Space", jvm.memory.type="heap"}
[otel.javaagent 2025-02-17 15:56:31:843 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.memory.used_after_last_gc has recorded multiple values for the same attributes: {jvm.memory.pool.name="Survivor Space", jvm.memory.type="heap"}
[otel.javaagent 2025-02-17 15:56:31:843 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.thread.count has recorded multiple values for the same attributes: {jvm.thread.daemon=true, jvm.thread.state="waiting"}

I was using a gradle script to pull the latest version of the javaagent and run it - noticed that you guys released a new version - 2.13
So to test I ran it again with 2.12 version and I could not see these WARN messages.

Steps to reproduce

Run java agent locally with a spring boot application and every minute logs will be pushed saying metrics are being duplicated.

Expected behavior

There should not be WARN logs for the metrics being sent to otel

Actual behavior

I am seeing WARN logs -

[otel.javaagent 2025-02-17 15:59:31:843 +0000] [PeriodicMetricReader-1] WARN io.opentelemetry.sdk.metrics.internal.state.AsynchronousMetricStorage - Instrument jvm.thread.count has recorded multiple values for the same attributes: {jvm.thread.daemon=true, jvm.thread.state="waiting"}

Javaagent or library instrumentation version

2.13

Environment

JDK:
OS:

[otel.javaagent 2025-02-17 15:54:47:545 +0000] [main] DEBUG io.opentelemetry.javaagent.tooling.VersionLogger - Running on Java 17.0.7. JVM Java HotSpot(TM) 64-Bit Server VM - Oracle Corporation - 17.0.7+8-LTS-224

Additional context

No response

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions