Questo documento descrive come aggiungere codice di osservabilità all'applicazione utilizzando OpenTelemetry. OpenTelemetry fornisce librerie di strumentazione che generano telemetria per i framework più diffusi. Puoi aumentare la telemetria generata dalla libreria aggiungendo strumenti personalizzati che misurano il comportamento specifico dell'applicazione.
I principi e i concetti descritti in questo documento possono essere applicati alle app scritte in tutte le lingue supportate da OpenTelemetry. Per scoprire di più sulla misurazione, consulta i seguenti documenti:
Il codice campione, ovvero la stessa app Go descritta in Genera tracce e metriche con Go, è disponibile su GitHub. Per visualizzare l'esempio completo, fai clic su more_vert Altro e poi seleziona Visualizza su GitHub.
Prima di iniziare
Enable the Cloud Logging, Cloud Monitoring, and Cloud Trace APIs.
Creare tracce personalizzate
Per generare trace personalizzate dalla tua applicazione, aggiungi il codice di strumentazione che crea gli intervalli OpenTelemetry. In OpenTelemetry, gli span sono i componenti di base delle tracce.
Per creare un intervallo:
Modifica l'app per acquisire un token OpenTelemetry
Tracer
. In OpenTelemetry, un tracer è un creatore di span. Puoi acquisire un tracker come mostrato nel seguente codice:Il nome del tracciante, rappresentato da
scopeName
, identifica l'ambito dell'instrumentazione delle tracce generate.Utilizza l'istanza
tracer
per creare gli spazi. Nel seguente esempio di codice, la funzionecomputeSubrequests
genera uno spazio ogni volta che viene chiamata:Nell'esempio di codice precedente, l'intervallo generato dalla funzione
computeSubrequests
rappresenta il lavoro svolto dall'intera funzione. Questo perché il primo passaggio della funzione consiste nell'iniziare un nuovo span utilizzandotracer.Start
e la parola chiavedefer
prima chespan.End()
garantisca il termine dello span appena prima dell'uscita della funzione.
Creare metriche personalizzate
Per generare metriche dalla tua applicazione, aggiungi il codice di strumentazione che registra le misurazioni effettuate durante l'esecuzione dell'app.
Per creare le metriche:
Modifica l'app per acquisire un token OpenTelemetry
Meter
. In OpenTelemetry, un metro fornisce l'accesso agli strumenti metrici per registrare le metriche. Puoi acquisire un contatore come mostrato nel seguente codice:Il nome del contatore, rappresentato da
scopeName
, identifica l'ambito dell'instrumentazione delle metriche generate.Utilizza l'istanza
meter
per creare strumenti che possono registrare le metriche. Ad esempio, nel codice seguente utilizziamometer
per creare un istogramma OpenTelemetry:Questo codice precedente genera un'istogramma denominato
sleepHistogram
.Utilizza l'istanza
sleepHistogram
per registrare il tempo di sospensione, che viene determinato quando viene invocata la funzionerandomSleep
:Le metriche registrate da questi strumenti vengono esportate dall'applicazione in base alla configurazione dell'esportatore OpenTelemetry.
Passaggi successivi
- Correla le metriche e le tracce utilizzando gli esempi
- OpenTelemetry
- Strumentazione OpenTelemetry
- Modello di dati delle metriche OpenTelemetry