Tracing configuration for insecure gRPC OpenTelemetry backend like Jaeger All-In-One

Hi @tobias0289,

I tried to run caddy/jaeger with the following config:

jaeger:
docker run -d --name jaeger -e COLLECTOR_ZIPKIN_HOST_PORT=:9411 -e COLLECTOR_OTLP_ENABLED=true -p 6831:6831/udp -p 6832:6832/udp -p 5778:5778 -p 16686:16686 -p 4317:4317 -p 4318:4318 -p 14250:14250 -p 14268:14268 -p 14269:14269 -p 9411:9411 jaegertracing/all-in-one:1.37

Caddyfile:

{
}
:80
respond "Hello, world!"
encode gzip zstd
tracing {
	span caddy_span
}

docker-compose.yaml:

version: '3.7'

services:
  caddy:
    image: caddy:latest
    ports:
      - "80:80"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
    environment:
      - OTEL_SERVICE_NAME=caddy-app
      - OTEL_EXPORTER_OTLP_ENDPOINT=http://<jaeger-ip>:4317
      - OTEL_EXPORTER_OTLP_INSECURE=true
      - OTEL_EXPORTER_OTLP_PROTOCOL=grpc
      - GRPC_GO_LOG_VERBOSITY_LEVEL=99
      - GRPC_GO_LOG_SEVERITY_LEVEL=info

After I executed:

 $ curl -D- localhost:80
HTTP/1.1 200 OK
Server: Caddy
Traceparent: 00-415300c2df22e0a9746fef4f5bcd33fb-835b921c7346826f-01
Date: Mon, 08 Aug 2022 10:28:00 GMT
Content-Length: 13

Hello, world!

I was able to see, trace information on UI (http://localhost:16686/search in my case).

I would suggest we try the following:

  1. Could you please double-check the port in your configuration (4317)?
  2. Try to verify connectivity between the caddy container and jaeger. For example execute from caddy container telnet <jaeger-ip> 4317.
  3. Please add
- GRPC_GO_LOG_VERBOSITY_LEVEL=99
- GRPC_GO_LOG_SEVERITY_LEVEL=info

to the caddy’s docker-compose file and try to send a request.

  1. After, please provide a full log from the jaeger and caddy containers.

I hope we will see a reason in the logs :slight_smile:

Best regards,
Andrii

3 Likes