Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 46802|Risposta: 4

[.NET Core] ASP.NET Core Link Tracing (4) Accesso al link tracing Jaeger

[Copiato link]
Pubblicato su 26/01/2021 13:17:27 | | | |
Prima di leggere questo articolo, devi implementare un ambiente Jaeger, come segue:

Distribuisci il tutorial di tracciamento distribuito dei link Jaeger con Docker
https://www.itsvse.com/thread-9526-1-1.html
ASP.NET Core Link Tracing (1) Installa il tutorial di Skywalking
https://www.itsvse.com/thread-9456-1-1.html

ASP.NET Core link tracing (2) utilizza l'integrazione SkyAPM
https://www.itsvse.com/thread-9458-1-1.html

ASP.NET Core Link Tracing (3) SkyAPM si basa sulla configurazione dinamica Consul
https://www.itsvse.com/thread-9468-1-1.html



Protocollo OpenTracing

OpenTracing è un protocollo di tracciamento distribuito indipendente dalla piattaforma o dal linguaggio, con un'interfaccia unificata, comoda per lo sviluppo e l'accesso a diversi sistemi di tracciamento distribuiti.Zipkin e Jaeger seguono entrambi il protocollo OpenTracing


OpenTelemetry OpenTracciacing, raccolta informazioni e dati OpenCensus
https://www.itsvse.com/thread-9525-1-1.html


Sistema di tracciamento distribuito Jaeger

Jaeger è un sistema di tracciamento distribuito sviluppato da Uber che viene già utilizzato su larga scala da Uber. Ed è entrato a far parte dell'organizzazione open source CNCF il 13 settembre 2017. Utilizzando Jaeger, è possibile visualizzare la catena di chiamate dell'intero sistema distribuito, il che può facilmente identificare e risolvere problemi:

funzione

  • Diffusione dell'informazione in un ambiente distribuito
  • Monitoraggio distribuito delle transazioni
  • Dimostra catene di chiamate cross-process
  • Ottimizzazione delle prestazioni
  • Individua il problema



caratteristico

  • Il vantaggio di usare UDP per trasmettere dati rispetto a HTTP è che non devi preoccuparti di inattività del servizio Jaeger o problemi di trasmissione di rete che influenzano il business normale. Lo svantaggio è la perdita di pacchetti, che colpisce l'intera catena di chiamate.
  • I dati vengono serializzati tramite Thrift o protobuf (trasmissione gRPC), che è il valore predefinito: Thrift.



Strategia di raccolta

  • ConstSampler, collezione completa
  • ProbabilisticSampler, raccolta probabilità, impostazione predefinita a 1 su 10.000
  • RateLimitingSampler è un'acquisizione a limite di velocità che può raccogliere solo una certa quantità di dati al secondo
  • RemotelyControlledSampler è una strategia dinamica di raccolta che regola la strategia di raccolta in base al numero di visite al sistema attuale



ASP.NET Core è collegato al tracciamento dei link Jaeger

Il progetto è un framework per .NET Core 3.1, e Nuget installa i seguenti pacchetti:

Tra questi, OpenTracing.Contrib.NetCore fornisce lo strumento OpenTracing per applicazioni basate su .NET Core, che è semplicemente un'estensione, e il monitoraggio principale è il seguente:

  • ASP.NET Core
  • Nucleo del Framework dell'Entità
  • System.Net.Http (HttpClient)
  • System.Data.SqlClient
  • Microsoft.Data.SqlClient



Nel file di avvio il metodo ConfigureServices è configurato come segue:

Chiamare ITracer nei log del controller e nel codice che richiede tempo di HomeController è il seguente:

Avvia il sito web, visita la pagina /Home/Index e poi visualizza il link tramite l'interfaccia online di Jaeger per visitare:http://127.0.0.1:16686/, puoi cercare il primo per tag, come mostrato nella figura sottostante:

http.url=http://localhost:27138/
Come mostrato di seguito:



Scarica codice sorgente:

Turisti, se volete vedere il contenuto nascosto di questo post, vi pregoRisposta


Risorse:

Il login del link ipertestuale è visibile.
Il login del link ipertestuale è visibile.




Precedente:Visualizza lo stato dell'app e le statistiche ASP.NET Core
Prossimo:le impostazioni predefinite di scoperta non sono adatte all'uso in produzione...
 Padrone di casa| Pubblicato su 26/01/2021 13:20:32 |
var operationName = "Get::api/values/";
costruttore var = tracciante. BuildSpan(operazioneNome);
Pubblicato su 27/01/2021 16:51:17 |
Il capo gruppo è davvero potente
Pubblicato su 22/09/2021 20:36:43 |
Impara a imparare...
Pubblicato su 25/05/2022 17:01:20 |
Impara a imparare.
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com