Skip to content

Adding a logical to a meter silently fails #234

Description

@sameagen-MW

Blot

Adding a logical to a meter will not increase the meter value, but also does not throw an error or warning. This isn't a timing issue in the example below, the collector had enough time to update between each increment of the meter and curl call below.

Example

>> m = opentelemetry.metrics.getMeter("test")

m = 

  Meter with properties:

       Name: "test"
    Version: ""
     Schema: ""

>> counter = m.createCounter("mycounter")

counter = 

  Counter with properties:

           Name: "mycounter"
    Description: ""
           Unit: ""

>> counter.add(3)

>> !curl -v http://localhost:8889/metrics
curl: /matlab/bin/glnxa64/libcurl.so.4: no version information available (required by curl)
* Host localhost:8889 was resolved.
* IPv6: ::1
* IPv4: 127.0.0.1
*   Trying [::1]:8889...
* Connected to localhost (::1) port 8889
* using HTTP/1.x
> GET /metrics HTTP/1.1

> Host: localhost:8889

> User-Agent: curl/7.88.1

> Accept: */*

> 

* Request completely sent off
< HTTP/1.1 200 OK

< Content-Type: text/plain; version=0.0.4; charset=utf-8; escaping=underscores

< Date: Thu, 08 Jan 2026 20:43:02 GMT

< Content-Length: 190

< Connection: close

< 

# HELP default_mycounter_total 
# TYPE default_mycounter_total counter
default_mycounter_total{job="unknown_service",otel_scope_name="test",otel_scope_schema_url="",otel_scope_version=""} 3
* shutting down connection #0

>> counter.add(logical(1))

>> !curl -v http://localhost:8889/metrics
curl: /matlab/bin/glnxa64/libcurl.so.4: no version information available (required by curl)
* Host localhost:8889 was resolved.
* IPv6: ::1
* IPv4: 127.0.0.1
*   Trying [::1]:8889...
* Connected to localhost (::1) port 8889
* using HTTP/1.x
> GET /metrics HTTP/1.1

> Host: localhost:8889

> User-Agent: curl/7.88.1

> Accept: */*

> 

< HTTP/1.1 200 OK

< Content-Type: text/plain; version=0.0.4; charset=utf-8; escaping=underscores

< Date: Thu, 08 Jan 2026 20:46:11 GMT

< Content-Length: 190

< Connection: close

< 

# HELP default_mycounter_total 
# TYPE default_mycounter_total counter
default_mycounter_total{job="unknown_service",otel_scope_name="test",otel_scope_schema_url="",otel_scope_version=""} 3
* we are done reading and this is set to close, stop send
* abort upload
* shutting down connection #0

>> counter.add(double(logical(1)))
>> !curl -v http://localhost:8889/metrics
curl: /matlab/bin/glnxa64/libcurl.so.4: no version information available (required by curl)
* Host localhost:8889 was resolved.
* IPv6: ::1
* IPv4: 127.0.0.1
*   Trying [::1]:8889...
* Connected to localhost (::1) port 8889
* using HTTP/1.x
> GET /metrics HTTP/1.1

> Host: localhost:8889

> User-Agent: curl/7.88.1

> Accept: */*

> 

* Request completely sent off
< HTTP/1.1 200 OK

< Content-Type: text/plain; version=0.0.4; charset=utf-8; escaping=underscores

< Date: Thu, 08 Jan 2026 20:51:06 GMT

< Content-Length: 190

< Connection: close

< 

# HELP default_mycounter_total 
# TYPE default_mycounter_total counter
default_mycounter_total{job="unknown_service",otel_scope_name="test",otel_scope_schema_url="",otel_scope_version=""} 4
* shutting down connection #0

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingenhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions