Jaeger
Aqui está o texto revisado mantendo o conteúdo original:
A integração com o OpenTelemetry é nativa na plataforma Devprime, simplificando a jornada do desenvolvedor de software com a utilização desse recurso que agrega muito valor no cenário de sistemas distribuídos, permitindo rastrear um processo de negócio em todos os microsserviços envolvidos.
As principais plataformas de Cloud do mercado já oferecem suporte ao OpenTelemetry, o que facilita sua adoção em ambiente de produção. Existe a opção de utilizá-lo no Kubernetes ou em qualquer outra solução gerenciada.
No contexto da nossa demonstração, utilizaremos um container Docker local para configurar o coletor de dados e a ferramenta Jaeger. Para configurar, é necessário especificar o protocolo e o endpoint na configuração.
Protocolo | URL |
---|---|
grpc | http://localhost:4317 |
http | http://localhost:4318 |
Siga os passos abaixo:
-
Instale o Devprime CLI.
-
Inicialize o container do Jaeger disponibilizado na documentação do Docker.
-
Clone o repositório com os dois microsserviços (ms-order/ms-payment) ou implemente manualmente:
git clone https://github.com/devprime/devprime-microservices-order-payment.git
-
Entre na pasta clonada e execute o comando
dp stack
:dp stack
a) Abra o arquivo no Visual Studio Code dentro da pasta de cada microsserviço:
code src/App/appsettings.json
b) Abra a chave Observability e verifique se a opção Enable está configurada como true. Em seguida, vá para a opção Trace e configure Enable como true, Type como Jaeger, e defina o host/port/endpoint com a URL do serviço de acordo com o protocolo (grpc/http). No Docker local, a URL padrão para grpc é “http://localhost:4317”.
|
|
- Execute o microsserviço ‘ms-order’ e observe no log que a informação configurada do Open Telemetry já estará em funcionamento. O log já demonstra que o Trace está como Enable e o Type definido como “Jaeger”.
|
|
Acompanhando o trace de dois ou mais microsserviços
- Execute o microsserviço ms-order e ms-payment
- Abra no browser em http://localhost:5000 e faça um ou mais posts em /v1/order
- Abra o Jaeger no browser em http://localhost:16686 e visualize
- Verifique todos os detalhes do processamento
Informação legal:
O Jaeger é uma ferramenta opensource compatível com o padrão Open Telemetery. Qualquer informação sobre licenciamento e utilização recomendamos o fabricante.