Подключение агента Java opentelemetry к jaeger с использованием OTLP дает «неожиданный конец потока»JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Подключение агента Java opentelemetry к jaeger с использованием OTLP дает «неожиданный конец потока»

Сообщение Anonymous »

Существует множество руководств по настройке автоматического агента opentelemetry Java для использования средства экспорта Jaeger, содержащегося в opentelemetry-javaagent-all.jar.
Но средство экспорта jaeger устарело и удалено, поэтому единственный способ - использовать OTLP. Вопрос в том, как?
начать пример установки jaeger со следующим:

Код: Выделить всё

docker run --name jaeger \
-e COLLECTOR_OTLP_ENABLED=true \
-p 16686:16686 \
-p 4317:4317 \
-p 4318:4318 \
jaegertracing/all-in-on
В некоторых сообщениях считается, что 4317 — это порт OTLP, поэтому я использую этот порт.
Приложение загрузки Java Spring запускается следующим образом:< /p>

Код: Выделить всё

java  -javaagent:myproj\src\main\resources\opentelemetry-javaagent.jar -Dotel.javaagent.configuration-file=myproj\src\main\resources\otel-jaeger-config.properties -jar my.jar
Свойства (Java-агент не поддерживает yml) выглядят следующим образом:

Код: Выделить всё

otel.service.name=myservice
otel.exporter.otlp.endpoint=http://localhost:4317
otel.logs.exporter=none
otel.logs.exporter=none необходим, чтобы остановить Java-агент, пытающийся отправить файлы журналов в Jaeger (который не может их обработать).
При запуске Java-приложения вы получаете следующую ошибку:

Код: Выделить всё

ERROR io.opentelemetry.exporter.internal.http.HttpExporter - Failed to export spans. The request could not be executed. Full error message: unexpected end of stream on http://localhost:4317/...
java.io.IOException: unexpected end of stream on http://localhost:4317/...
А в докере Jaeger вы увидите такой вывод:

Код: Выделить всё

{"level":"info","ts":1727365210.185326,"caller":"transport/http2_server.go:298","msg":"[transport] [server-transport 0xc0004d4d00] Closing: connection error: desc = \"transport: http2Server.HandleStreams received bogus greeting from client: \\\"POST /v1/metrics HTTP/1.\\\"\""}
{"level":"info","ts":1727365210.1853955,"caller":"[email protected]/server.go:994","msg":"[core] [Server #4]grpc: Server.Serve failed to create ServerTransport: connection error: desc = \"transport: http2Server.HandleStreams received bogus greeting from client: \\\"POST /v1/metrics HTTP/1.\\\"\""}
Я также попробовал следующую конфигурацию, которую нашел для новой реликвии:

Код: Выделить всё

otel.exporter.otlp.protocol=http/protobuf
otel.attribute.value.length.limit=4095
otel.experimental.resource.disabled-keys=process.command_args
otel.exporter.otlp.compression=gzip
otel.exporter.otlp.metrics.temporality.preference=delta
Но ошибка не меняется.

Подробнее здесь: https://stackoverflow.com/questions/790 ... cted-end-o
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»