Skip to content

Support compression for the public grpc API #255

@pavolloffay

Description

@pavolloffay

#199 introduced gRPC ingestion API for OTLP (traces). The API does seems to support compression (OTELcol by default uses gzip).

2022-03-18T11:41:19.208Z	error	exporterhelper/queued_retry.go:183	Exporting failed. The error is not retryable. Dropping data.	{"kind": "exporter", "name": "otlp", "error": "Permanent error: rpc error: code = Unimplemented desc = grpc: Decompressor is not installed for grpc-encoding \"gzip\"", "dropped_items": 2}
go.opentelemetry.io/collector/exporter/exporterhelper.(*retrySender).send
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/queued_retry.go:183
go.opentelemetry.io/collector/exporter/exporterhelper.(*tracesExporterWithObservability).send
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/traces.go:135
go.opentelemetry.io/collector/exporter/exporterhelper.(*queuedRetrySender).start.func1
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/queued_retry_inmemory.go:118
go.opentelemetry.io/collector/exporter/exporterhelper/internal.consumerFunc.consume
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/internal/bounded_memory_queue.go:99
go.opentelemetry.io/collector/exporter/exporterhelper/internal.(*boundedMemoryQueue).StartConsumers.func2
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/internal/bounded_memory_queue.go:78
2022-03-18T11:41:29.208Z	error	exporterhelper/queued_retry.go:183	Exporting failed. The error is not retryable. Dropping data.	{"kind": "exporter", "name": "otlp", "error": "Permanent error: rpc error: code = Unimplemented desc = grpc: Decompressor is not installed for grpc-encoding \"gzip\"", "dropped_items": 49}
go.opentelemetry.io/collector/exporter/exporterhelper.(*retrySender).send
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/queued_retry.go:183
go.opentelemetry.io/collector/exporter/exporterhelper.(*tracesExporterWithObservability).send
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/traces.go:135
go.opentelemetry.io/collector/exporter/exporterhelper.(*queuedRetrySender).start.func1
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/queued_retry_inmemory.go:118
go.opentelemetry.io/collector/exporter/exporterhelper/internal.consumerFunc.consume
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/internal/bounded_memory_queue.go:99
go.opentelemetry.io/collector/exporter/exporterhelper/internal.(*boundedMemoryQueue).StartConsumers.func2
	go.opentelemetry.io/[email protected]/exporter/exporterhelper/internal/bounded_memory_queue.go:78

OTELcol config

# kubectl port-forward service/observatorium-xyz-observatorium-api 8090:8090 -n observatorium
# docker run --rm -it --net=host -v $PWD:/tmp/conf ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector:0.47.0 --config /tmp/conf/otelconf.yaml
extensions:

receivers:
  otlp:
    protocols:
      grpc:
      http:
  jaeger:
    protocols:
      thrift_binary:
      thrift_compact:
      thrift_http:
      grpc:

processors:

exporters:
  otlp:
    endpoint: localhost:8090
    compression: gzip
    headers:
      X-Tenant: "eyJhbGciOiJSUzI1NiIsImtpZCI6InB1YmxpYzo3ZTg1MTliYS03Y2M3LTQwM2EtYWE1OC0zZWEwYTdlOWUyNjkiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOltdLCJjbGllbnRfaWQiOiJ1c2VyIiwiZXhwIjoxNjQ3NjA2OTUzLCJleHQiOnt9LCJpYXQiOjE2NDc2MDMzNTMsImlzcyI6Imh0dHA6Ly8xNzIuMTcuMC4xOjQ0NDQvIiwianRpIjoiZTgzZTY5MjEtMzM2Yy00MThjLWJkZTQtZDljZGVmZWM0Yjc0IiwibmJmIjoxNjQ3NjAzMzUzLCJzY3AiOltdLCJzdWIiOiJ1c2VyIn0.UiY5ejk9oa5QXa5xhtXVZ8-1N21x-jipwMJrC7t_fN_TbaMUSgphwcviCwHq_4hpRy1ApHsSNA4eNYwRS5uC7z0rL_gu1SVE9HpBZRrB3zXdUDovZ_qhBNxvstwAXCQKEZPYx6kH0bqk-LAqEOAJj3WRoYI5v8Pg2jwY0UbVXfCerlGiG5ez5yoGwPw4s9ixfd93EAI6jJCmUGp2bv-LucuQoP_e3Mjz6XtGvRriig9686DQ0WyVom_1mkImRZcNM_eQYbQ444WmT4RjipSIZ-O3RDT4q9nRYtLxwWgLVlSiq5e2Ei-imK4kVeuskxC3As5JS3YrQT1bIHacZWnMpZ6b7Jy4Mtkb0xyY7YFYORWouaEOdXOJWOABtsGjNe40NS2kzNnMrtL1bRIzILNyeNC1peDXcnEIVi4zT8E_KhE3Q9fwQ49u02m0uCl__VtNy6Md6Pz4FEb-9-aj-sfmPjsNnWrU3mXkR1OaezV00bwb7kkckYSEYR4WSRcaxEklZt30a6Gq_84nur2XjGDal_gDn47SmfMiw-gdZHZP82qKWt8ONBimoYpDAVrYhi0jWLl1pbE7HxcUnE3wVw_eA62YuumalvnBiVFzGa-Tzt4vPtW__ECNNpDJ3L18g1R3drGvuFat"
    tls:
      insecure: true

service:
  pipelines:
    traces:
      receivers: [otlp, jaeger]
      exporters: [otlp]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions