Fiz o comando conforme passado na aula, não sei se hoje alguma atualização desde que foi gravado, inclusive precisei fazer umas alterações no comando visto que o comando passado na aula, apresentou um erro e não subia a aplicação, segue abaixo as informações:
Comando que executei para aplicação subir:
java --add-opens java.base/java.lang=ALL-UNNAMED -javaagent:opentelemetry/opentelemetry-javaagent.jar -Dotel.service.name=api-cursos -Dotel.traces.exporter=otlp -Dotel.metrics.exporter=none -Dotel.integration.jdbc.datasource.enabled=true -Dotel.instrumentation.jdbc.datasource.enabled=true -Dotel.exporter.otlp.endpoint=http://localhost:4318 -Dotel.exporter.otlp.protocol=http/protobuf -jar target/*.jar
Erro que deu no comando passado na aula:
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.findLoadedClass(java.lang.String) accessible
Erro no conteiners do collector:
2025/10/31 14:27:28 collector server run finished with error: failed to get config: cannot unmarshal the configuration: 1 error(s) decoding:
- error decoding 'receivers': error reading configuration for "otlp": 1 error(s) decoding:
- 'protocols.grpc' has invalid keys: http
Foi corrigido com o seguinte ajuste no arquivo otel-collector-config.yaml:
receivers:
otlp:
protocols:
grpc:
http:
exporters:
otlp/jaeger:
endpoint: jaeger-api-cursos:4317
tls:
insecure: true
service:
pipelines:
traces:
receivers: [otlp]
exporters: [otlp/jaeger]