Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gbzarelli/java-log-tracing
[quarkus] [spring] [sleuth] [jersey] Log tracing com Quarkus Open Tracing e Spring Cloud Sleuth
https://github.com/gbzarelli/java-log-tracing
java jaxrs jersey quarkus sleuth spring spring-boot
Last synced: 3 days ago
JSON representation
[quarkus] [spring] [sleuth] [jersey] Log tracing com Quarkus Open Tracing e Spring Cloud Sleuth
- Host: GitHub
- URL: https://github.com/gbzarelli/java-log-tracing
- Owner: gbzarelli
- Created: 2021-09-08T20:02:40.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-09-13T18:27:34.000Z (over 3 years ago)
- Last Synced: 2023-07-13T15:51:12.590Z (over 1 year ago)
- Topics: java, jaxrs, jersey, quarkus, sleuth, spring, spring-boot
- Language: Java
- Homepage:
- Size: 189 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Java log tracing
A idéia desse reposítório e realizar uma POC de comunicação entre dois frameworks utilizando o compartilhamento de traceId de uma requisição para impressão nos logs das aplicações. Foi utilizado o [Spring Boot com o Spring Cloud Sleuth](https://spring.io/projects/spring-cloud-sleuth) e o [Quarkus com o OpenTracing](quarkus.io/guides/opentracing).
# Executando a aplicação
- Faça o clone do projeto
- Execute o build
```
make build
```- Gere as imagens docker
```
make install
```- Inicie os clients
```
make run
```# Testando
As aplicações serão iniciadas, com chamadas encadeadas entre elas, para demonstrar o compartilhamento do `traceId` e geração do `spanId` para cada request.
Ao chamar por exemplo o primeiro client: `http://localhost:8080/ping` a aplicação chamará as demais conforme o fluxo:`spring_log_tracing_1 (8080) -> quarkus_log_tracing_1 (8090) -> spring_log_tracing_2 (8081) -> quarkus_log_tracing_2 (8091) -> spring_jersey_log_tracing_1 (9080) -> quarkus_log_tracing_3 (9092)`
Nota-se o objetivo do projeto ao monitorar os logs no qual foi configurado com o seguinte pattern:
`%d{HH:mm:ss.SSS} [%X{traceId},%X{spanId}] [%t] %-5p [%c{2.}] - %s%e%n`
Ex. de uma requisição na primeira app: