Executing otlp/OtlpExporterExample, otel-collector error: 2024-04-03T08:54:58.583Z error exporterhelper/queue_sender.go:101 Exporting failed. Dropping data. {"kind": "exporter", "data_type": "traces", "name": "otlp/jaeger", "error": "not retryable error: Permanent error: rpc error: code = Unimplemented desc = unknown service opentelemetry.proto.collector.trace.v1.TraceService", "dropped_items": 3}
docker-otel-collector-1
Attributes:
-> exampleNumber: Int(2)
-> good: Bool(true)
{"kind": "exporter", "data_type": "traces", "name": "logging"}
2024-04-03T08:54:58.583Z error exporterhelper/queue_sender.go:101 Exporting failed. Dropping data. {"kind": "exporter", "data_type": "traces", "name": "otlp/jaeger", "error": "not retryable error: Permanent error: rpc error: code = Unimplemented desc = unknown service opentelemetry.proto.collector.trace.v1.TraceService", "dropped_items": 3}
It seems that docker-otel-collector-1 is not able to push data to jaeger, jaeger rejects it.
Runs completely with the demo, didn't modify anything.
Did you solve it ????
Also ran into this issue. Did you manage to solve it?
Attributes:
...
-> http.target: Str(/api/rolldice)
-> net.protocol.version: Str(1.1)
-> http.route: Str(/api/rolldice)
-> http.response_content_length: Int(32)
-> http.status_code: Int(200)
{"kind": "exporter", "data_type": "traces", "name": "debug"}
error exporterhelper/queue_sender.go:101 Exporting failed. Dropping data. {"kind": "exporter", "data_type": "traces", "name": "otlp", "error": "not retryable error: Permanent error: rpc error: code = Unimplemented desc = unknown service opentelemetry.proto.collector.trace.v1.TraceService", "dropped_items": 2}
go.opentelemetry.io/collector/exporter/exporterhelper.newQueueSender.func1
go.opentelemetry.io/collector/[email protected]/exporterhelper/queue_sender.go:101
go.opentelemetry.io/collector/exporter/internal/queue.(*boundedMemoryQueue[...]).Consume
go.opentelemetry.io/collector/[email protected]/internal/queue/bounded_memory_queue.go:52
go.opentelemetry.io/collector/exporter/internal/queue.(*Consumers[...]).Start.func1
go.opentelemetry.io/collector/[email protected]/internal/queue/consumers.go:43
Edit: Solved. In otel-config.yaml, specify:
exporters:
otlp/jaeger:
endpoint: jaeger:4317
tls:
insecure: true
I am also receiving this error
extensions:
memory_ballast:
size_mib: 512
zpages:
endpoint: 0.0.0.0:55679
receivers:
otlp:
protocols:
grpc:
http:
cors:
allowed_origins:
- https://*.com
allowed_headers:
- Accept
- Access-Control-Allow-Origin
- Content-Type
- Referer
processors:
batch:
exporters:
otlp/jaeger:
endpoint: "jaeger-all-in-one.observability.svc.cluster.local:14250"
tls:
insecure: true
service:
pipelines:
traces:
receivers: [ otlp ]
processors: [ batch ]
exporters: [ otlp/jaeger ]
extensions: [ memory_ballast, zpages ]
@seannguyn what config change is required ?
@saireddyb if you are running the all in one, you should map your jaeger port to the same as your otel collector. Will work.
I'm also facing it to run inside my k8s cluster.
2024-08-13T18:44:57.911Z error exporterhelper/queue_sender.go:92 Exporting failed. Dropping data. {"kind": "exporter", "data_type": "traces", "name": "otlp/jaeger", "error": "not retryable error: Permanent error: rpc error: code = Unimplemented desc = unknown service opentelemetry.proto.collector.trace.v1.TraceService", "dropped_items": 7} go.opentelemetry.io/collector/exporter/exporterhelper.newQueueSender.func1 go.opentelemetry.io/collector/[email protected]/exporterhelper/queue_sender.go:92 go.opentelemetry.io/collector/exporter/internal/queue.(*boundedMemoryQueue[...]).Consume go.opentelemetry.io/collector/[email protected]/internal/queue/bounded_memory_queue.go:52 go.opentelemetry.io/collector/exporter/internal/queue.(*Consumers[...]).Start.func1 go.opentelemetry.io/collector/[email protected]/internal/queue/consumers.go:43
apiVersion: opentelemetry.io/v1beta1
kind: OpenTelemetryCollector
metadata:
name: otel
spec:
config:
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
processors:
batch: {}
extensions:
health_check: {}
exporters:
debug: {}
otlp/jaeger:
endpoint: "jaeger-collector.default.svc.cluster.local:14250"
tls:
insecure: true
service:
extensions: [health_check]
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [debug, otlp/jaeger]
Solution: By default, OTLP ports of collector are not created/exposed. You need to override it.
I am also receiving this error
extensions: memory_ballast: size_mib: 512 zpages: endpoint: 0.0.0.0:55679 receivers: otlp: protocols: grpc: http: cors: allowed_origins: - https://*.com allowed_headers: - Accept - Access-Control-Allow-Origin - Content-Type - Referer processors: batch: exporters: otlp/jaeger: endpoint: "jaeger-all-in-one.observability.svc.cluster.local:14250" tls: insecure: true service: pipelines: traces: receivers: [ otlp ] processors: [ batch ] exporters: [ otlp/jaeger ] extensions: [ memory_ballast, zpages ]@seannguyn what config change is required ?
Check your jaeger otlp port, you might be configure wrong port on the exporter. Default otlp port of jaeger is 4317.