Done
Details
Assignee
Francesco Davide LapentaFrancesco Davide LapentaReporter
Francesco Davide LapentaFrancesco Davide LapentaComponents
Fix versions
Priority
Low
Details
Details
Assignee
Francesco Davide Lapenta
Francesco Davide LapentaReporter
Francesco Davide Lapenta
Francesco Davide LapentaComponents
Fix versions
Priority
Created June 20, 2024 at 3:39 PM
Updated July 30, 2024 at 4:06 PM
Resolved July 11, 2024 at 10:12 AM
Tracing has been added to a1pms: https://wiki.onap.org/x/NYCNDQ
1. Have a solution to control (Northbound Southbound Api )
a) otel.library org.springframework.org (that traces only the direct calls to a1pms) and the
b) otel.library io.opentelemetry.spring-webflux-5.3 (that traces calls made by a1pms to southbound apis)
A solution could be having 2 flags in the application yaml to control the Configuration beans creation. Or check
https://opentelemetry.io/docs/zero-code/java/spring-boot-starter/out-of-the-box-instrumentation/
2. To Avoid calling ApplicationContextManager to get the beans into AsyncRestClient, a solution proposed by Raviteja could be wrapping the bulding of the webclient into a Service class and have a static method to be called into AsyncRestClient.
3. Adding opentelemetry springboot starter dependecy instead of specific intrumentations gives us more informations in the spans:
https://opentelemetry.io/docs/zero-code/java/spring-boot-starter/
<dependency>
<groupId>io.opentelemetry.instrumentation</groupId>
<artifactId>opentelemetry-spring-boot-starter</artifactId>
</dependency>
Apprication yaml:
otel:
exporter:
otlp:
endpoint: http://jaeger:4317
traces:
protocol: ${ONAP_OTEL_EXPORTER_OTLP_TRACES_PROTOCOL:grpc}
instrumentation:
spring-webflux:
enabled: true
metrics:
exporter: none
logs:
exporter: none