opentelemetry-rust icon indicating copy to clipboard operation
opentelemetry-rust copied to clipboard

OpenTelemetry trace error occurred. Exporter jaeger encountered the following error(s): thrift agent failed with not open

Open Abhicodes-crypto opened this issue 2 years ago • 5 comments

When I send requests to server between the logs i keep getting this

OpenTelemetry trace error occurred. Exporter jaeger encountered the following error(s): thrift agent failed with not open

Can someone please help me resolve this.

Abhicodes-crypto avatar May 12 '22 06:05 Abhicodes-crypto

Could you provide more details? For example, what's your setup. Did you test your agent running alongside the application?

TommyCpp avatar May 13 '22 01:05 TommyCpp

I have the same error (using docker):

version: "3.9"
services:
  host:
    build:
      context: .
      dockerfile: ./docker/host.Dockerfile
    environment:
      - JAEGER_SERVICE_NAME=trade-host
      - JAEGER_AGENT_HOST=jaeger
      - JAEGER_AGENT_PORT=6831
      - JAEGER_SAMPLER_MANAGER_HOST_PORT=jaeger:5778
    ports:
      - "4001:4001"
    depends_on:
      - jaeger
    networks:
      - deeptrading
  node:
    build:
      context: .
      dockerfile: ./docker/node.Dockerfile
    environment:
      - HOST_HOST=host
      - PORT_PORT=4001
    deploy:
      replicas: 2
    networks:
      - deeptrading
  jaeger:
    image: jaegertracing/all-in-one:latest
    ports:
      - "5775:5775/udp"
      - "6831:6831/udp"
      - "6832:6832/udp"
      - "5778:5778"
      - "16686:16686"
      - "14268:14268"
      - "9411:9411"
    networks:
      - deeptrading

networks:
  deeptrading:

For tracing I use the tokio-tracing library within this tracer:

    let tracer = opentelemetry_jaeger::new_pipeline()
        .with_service_name("trade-host")
        .install_simple()
        .expect("Failed to initialize OpenTelemetry-Jaeger pipeline");

deeprobin avatar May 25 '22 23:05 deeprobin

Yea, I'm actually getting the same thing. I was previously using an agent sidecar, and that was working well enough, but now I am getting the same issue. I am manually specifying the .with_collector_endpoint(..) and it is actually the same endpoint that a few of our Golang services are using.

thedodd avatar Jun 08 '22 20:06 thedodd

Based on the docker-compose files provided. It seems your env vars don't work. As opentelemetry-jaeger doesn't support

      - JAEGER_SERVICE_NAME=trade-host
      - JAEGER_AGENT_HOST=jaeger
      - JAEGER_AGENT_PORT=6831
      - JAEGER_SAMPLER_MANAGER_HOST_PORT=jaeger:5778

Instead, you can use

OTEL_EXPORTER_JAEGER_AGENT_HOST
OTEL_EXPORTER_JAEGER_AGENT_PORT

TommyCpp avatar Jun 13 '22 03:06 TommyCpp

I'm getting the same error with a similar setup

let tracer = opentelemetry_jaeger::new_agent_pipeline() .with_endpoint("127.0.0.1:6831") .install_batch(Tokio);

And running the jeager all in one image using

docker run -d --name jaeger \ -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 \ -p 5775:5775/udp \ -p 6831:6831/udp \ -p 6832:6832/udp \ -p 5778:5778 \ -p 16686:16686 \ -p 14268:14268 \ -p 9411:9411 \ jaegertracing/all-in-one:1.6

Did some of you guys figure out the solution?

ceng-p avatar Nov 24 '22 15:11 ceng-p

Closing jaeger related issues, given its imminent removal. See https://github.com/open-telemetry/opentelemetry-rust/issues/995

cijothomas avatar Mar 17 '24 16:03 cijothomas