Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 46802|Respuesta: 4

[.NET Core] ASP.NET Trazado de enlaces principales (4) Acceso al trazado de enlaces Jaeger

[Copiar enlace]
Publicado en 26/1/2021 13:17:27 | | | |
Antes de revisar este artículo, necesitas desplegar un entorno Jaeger, de la siguiente manera:

Despliega Jaeger tutorial de rastreo de enlaces distribuidos con Docker
https://www.itsvse.com/thread-9526-1-1.html
ASP.NET Trazado de Enlaces Principales (1) Instala el tutorial de Skywalking
https://www.itsvse.com/thread-9456-1-1.html

ASP.NET Trazado de enlaces Core (2) utiliza integración SkyAPM
https://www.itsvse.com/thread-9458-1-1.html

ASP.NET Trazado de Enlace Principal (3) SkyAPM se basa en la configuración dinámica de Consul
https://www.itsvse.com/thread-9468-1-1.html



Protocolo OpenTracing

OpenTracing es un protocolo de seguimiento distribuido que es independiente de la plataforma o lenguaje, con una interfaz unificada, lo cual resulta conveniente para el desarrollo y acceso a diferentes sistemas de seguimiento distribuidos.Zipkin y Jaeger siguen ambos el protocolo OpenTracing


OpenTelemetría OpenTracing, recogida de información y datos de OpenCensus
https://www.itsvse.com/thread-9525-1-1.html


Sistema de seguimiento distribuido Jaeger

Jaeger es un sistema de seguimiento distribuido desarrollado por Uber que ya se está utilizando a gran escala en Uber. Y se unió a la organización de código abierto CNCF el 13 de septiembre de 2017. Usar Jaeger puede visualizar la cadena de llamadas de todo el sistema distribuido, lo que puede identificar y resolver fácilmente problemas:

función

  • Difusión de información en un entorno distribuido
  • Monitorización distribuida de transacciones
  • Demuestra cadenas de llamadas entre procesos
  • Optimización del rendimiento
  • Localiza el problema



característica

  • La ventaja de usar UDP para transmitir datos en comparación con HTTP es que no tienes que preocuparte por inactividad del servicio Jaeger ni por problemas de transmisión de red que afecten al negocio normal. La desventaja es la pérdida de paquetes, que afecta a toda la cadena de llamadas.
  • Los datos se serializan mediante Thrift o protobuf (transmisión gRPC), que es el valor predeterminado: Thrift.



Estrategia de cobro

  • ConstSampler, colección completa
  • ProbabilisticSampler, colección de probabilidades, por defecto 1 de cada 10.000
  • RateLimitingSampler es una adquisición limitante de velocidad que solo puede recopilar una cierta cantidad de datos por segundo
  • RemotelyControlledSampler es una estrategia dinámica de recogida que ajusta la estrategia de recogida según el número de visitas al sistema actual



ASP.NET Core está conectado al trazado de enlaces Jaeger

El proyecto es un framework para .NET Core 3.1, y Nuget instala los siguientes paquetes:

Entre ellas, OpenTracing.Contrib.NetCore proporciona la herramienta OpenTracing para aplicaciones basadas en .NET Core, que es simplemente una extensión, y la monitorización principal es la siguiente:

  • ASP.NET Núcleo
  • Núcleo del Marco de Entidades
  • System.Net.Http (HttpClient)
  • System.Data.SqlClient
  • Microsoft.Data.SqlClient



En el archivo de arranque, el método ConfigureServices se configura de la siguiente manera:

Llamar a ITracer en los registros del controlador de HomeController y el código que consume tiempo es el siguiente:

Abre la web, visita la página /Home/Index y luego consulta el enlace a través de la interfaz online de Jaeger para visitar:http://127.0.0.1:16686/, puedes buscar prime por etiquetas, como se muestra en la figura siguiente:

http.url=http://localhost:27138/
Como se muestra a continuación:



Descarga del código fuente:

Turistas, si queréis ver el contenido oculto de esta publicación, por favorRespuesta


Recursos:

El inicio de sesión del hipervínculo es visible.
El inicio de sesión del hipervínculo es visible.




Anterior:Consulta el estado y estadísticas de la app ASP.NET Core
Próximo:los ajustes predeterminados de descubrimiento no son adecuados para uso en producción...
 Propietario| Publicado en 26/1/2021 13:20:32 |
var operationName = "Get::api/values/";
VAR Builder = trazador. BuildSpan(nombreOperación);
Publicado en 27/1/2021 16:51:17 |
El líder del grupo es realmente poderoso
Publicado en 22/9/2021 20:36:43 |
Aprende a aprender...
Publicado en 25/5/2022 17:01:20 |
Aprende a aprender.
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com