Skip to content

HTTP 400 "proto: wrong wireType = 1 for field BucketCounts" error after updating to v0.133.0 #13727

@martincostello

Description

@martincostello

Component(s)

exporter/otlphttp

What happened?

Describe the bug

After updating from v0.132.2 to v0.133.0 in grafana/docker-otel-lgtm as part of our v0.11.9 release, applications submitting metrics to http://${host}:4318/v1/metrics with the following configuration receive an HTTP 400 error with the following response:

OTEL_EXPORTER_OTLP_ENDPOINT=http://${host}:4318
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
proto: wrong wireType = 1 for field BucketCounts

Steps to reproduce

I don't have a minimal reproduction, but grafana/docker-otel-lgtm@af35c63 shows a change to our LGTM acceptance tests that fail when the configuration is changed to the above for a .NET application instead of sending gRPC to http://${host}:4317.

What did you expect to see?

Metrics are successfully posted to the endpoint.

What did you see instead?

HTTP 400 response with the response:

proto: wrong wireType = 1 for field BucketCounts

Collector version

v0.133.0

Environment information

Environment

OS: Ubuntu 24.04.3
Compiler: N/A

OpenTelemetry Collector configuration

receivers:
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:4317
      http:
        endpoint: 0.0.0.0:4318
        cors:
          allowed_origins:
            - http://*
  prometheus/collector:
    config:
      scrape_configs:
        - job_name: "opentelemetry-collector"
          scrape_interval: 1s
          static_configs:
            - targets: ["127.0.0.1:8888"]

extensions:
  health_check:
    endpoint: 0.0.0.0:13133
    path: "/ready"

processors:
  batch:

exporters:
  otlphttp/metrics:
    endpoint: http://127.0.0.1:9090/api/v1/otlp
    tls:
      insecure: true
  otlphttp/traces:
    endpoint: http://127.0.0.1:4418
    tls:
      insecure: true
  otlphttp/logs:
    endpoint: http://127.0.0.1:3100/otlp
    tls:
      insecure: true
  otlp/profiles:
    endpoint: http://127.0.0.1:4040
    tls:
      insecure: true
  debug/metrics:
    verbosity: detailed
  debug/traces:
    verbosity: detailed
  debug/logs:
    verbosity: detailed

service:
  extensions: [health_check]
  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/traces]
      #exporters: [otlphttp/traces,debug/traces]
    metrics:
      receivers: [otlp, prometheus/collector]
      processors: [batch]
      exporters: [otlphttp/metrics]
      #exporters: [otlphttp/metrics,debug/metrics]
    logs:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/logs]
      #exporters: [otlphttp/logs,debug/logs]
    profiles:
      receivers: [otlp]
      exporters: [otlp/profiles]

Log output

Additional context

No response

Tip

React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it. Learn more here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:pdatapdata module related issuesbugSomething isn't workingpriority:p1High

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions