Skip to content

awsemf - CloudWatch logs unsupported protocol scheme error #40308

Open
@lzac

Description

@lzac

Component(s)

exporter/awsemf

What happened?

Description

We've been using the awsemf exporter with no major issues since a long time but it looks like it's no longer working as expected starting from v0.125.0.
My guess is that something broke because of the upgrade aws-sdk-go-v2 with #39314 as we're now getting the following error with no configuration changes on our side.

scraper-collector-opentelemetry-collector-0 opentelemetry-collector 2025-05-27T07:00:48.102Z warn [email protected]/batch_processor.go:264 Sender failed {"resource": {}, "otelcol.component.id": "batch/cloudwatch", "otelcol.component.kind": "processor", "otelcol.pipeline.id": "metrics/awsemfkubestate", "otelcol.signal": "metrics", "error": "operation error CloudWatch Logs: PutLogEvents, exceeded maximum number of attempts, 2, https response error StatusCode: 0, RequestID: , request send failed, Post \"/\": unsupported protocol scheme \"\""}

Steps to Reproduce

We've upgraded our helm chart from 0.123.0 to 0.124.0, which actually upgrade the collector to 0.125.0, and started getting the error.

Expected Result

Logs should be properly sent to CloudWatch.

Actual Result

CloudWatch does not receive any log.

Collector version

v0.125.0

Environment information

No response

OpenTelemetry Collector configuration

config:
  "service":
    "pipelines":
      "metrics/awsemfkubestate":
        "receivers":
        - "prometheus"
        "processors":
        - "filter/awsemfkubestate"
        - "batch"
        "exporters":
        - "awsemf"
  "processors":
    "batch": {}
    "filter/awsemfkubestate":
      "metrics":
        "include":
          "match_type": "strict"
          "metric_names":
          - "kube_deployment_spec_replicas"
          - "kube_deployment_status_replicas_available"
  "exporters":
    "awsemf":
      "region": "${REGION}"
      "output_destination": "cloudwatch"
      "dimension_rollup_option": "NoDimensionRollup"
      "resource_to_telemetry_conversion":
          "enabled": true
      "namespace": "${EMF_NAMESPACE}"
      "log_group_name": "${LOG_GROUP_NAME}"
      "log_retention": 7
      "log_stream_name": "${LOG_STREAM_NAME}"
      "metric_declarations":
        - "dimensions": [[namespace, deployment]]
          "metric_name_selectors":
            - "kube_deployment_spec_replicas"
            - "kube_deployment_status_replicas_available"

Log output

scraper-collector-opentelemetry-collector-0 opentelemetry-collector 2025-05-27T07:00:48.102Z	warn	[email protected]/batch_processor.go:264	Sender failed	{"resource": {}, "otelcol.component.id": "batch/cloudwatch", "otelcol.component.kind": "processor", "otelcol.pipeline.id": "metrics/awsemfkubestate", "otelcol.signal": "metrics", "error": "operation error CloudWatch Logs: PutLogEvents, exceeded maximum number of attempts, 2, https response error StatusCode: 0, RequestID: , request send failed, Post \"/\": unsupported protocol scheme \"\""}

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions