Antes de revisar este artigo, você precisa implantar um ambiente Jaeger, da seguinte forma:
Protocolo OpenTracing
OpenTracing é um protocolo de rastreamento distribuído independente de plataforma ou linguagem, com uma interface unificada, conveniente para o desenvolvimento e acesso de diferentes sistemas distribuídos de rastreamento.Zipkin e Jaeger seguem o protocolo OpenTracing。
Sistema de rastreamento distribuído Jaeger
Jaeger é um sistema distribuído de rastreamento desenvolvido pela Uber que já está sendo usado em larga escala na Uber. E ingressou na organização open source CNCF em 13 de setembro de 2017. O uso do Jaeger pode visualizar a cadeia de chamadas de todo o sistema distribuído, o que pode identificar e resolver facilmente problemas:
função
- Disseminação de informação em um ambiente distribuído
- Monitoramento distribuído de transações
- Demonstra cadeias de chamadas entre processos
- Otimização de desempenho
- Localize o problema
característica
- A vantagem de usar UDP para transmitir dados em comparação com HTTP é que você não precisa se preocupar com o tempo de inatividade do serviço Jaeger ou problemas de transmissão de rede que afetam o negócio normal. A desvantagem é a perda de pacotes, que afeta toda a cadeia de chamadas.
- Os dados são serializados via Thrift ou protobuf (transmissão gRPC), que é o padrão: Thrift.
Estratégia de cobrança
- ConstSampler, coleção completa
- ProbabilisticSampler, coleta de probabilidades, padrão para 1 em 10.000
- RateLimitingSampler é uma aquisição limitante de taxa que só pode coletar uma certa quantidade de dados por segundo
- RemotelyControlledSampler é uma estratégia dinâmica de coleta que ajusta a estratégia de coleta de acordo com o número de visitas ao sistema atual
ASP.NET Core está conectado ao rastreamento de links Jaeger
O projeto é um framework para .NET Core 3.1, e o Nuget instala os seguintes pacotes:
Entre elas, o OpenTracing.Contrib.NetCore oferece a ferramenta OpenTracing para aplicações baseadas em .NET Core, que é simplesmente uma extensão, e o monitoramento principal é o seguinte:
- ASP.NET Núcleo
- Núcleo da Estrutura da Entidade
- System.Net.Http (HttpClient)
- System.Data.SqlClient
- Microsoft.Data.SqlClient
No arquivo Inicial, o método ConfigureServices é configurado da seguinte forma:
Chamar o ITracer nos logs do controlador HomeController e no código demorado é o seguinte:
Abra o site, visite a página /Home/Index e então veja o link pela interface online do Jaeger para visitar:http://127.0.0.1:16686/, você pode buscar por primos por tags, como mostrado na figura abaixo:
http.url=http://localhost:27138/ Como mostrado abaixo:
Código fonte para download:
Turistas, se quiserem ver o conteúdo oculto deste post, por favor Resposta
Recursos:
O login do hiperlink está visível.
O login do hiperlink está visível.
|