Integrazione con OpenTelemetry utilizzando il raccoglitore OpenTelemetry
Utilizzando il Collector OpenTelemetry, è possibile impostare gli attributi delle risorse o inoltrare i dati di OpenTelemetry a un agente Instana o a un backend Instana.
OpenTelemetry Collector è uno degli strumenti OpenTelemetry più diffusi che offre un'implementazione indipendente dal fornitore per la ricezione, l'elaborazione e l'esportazione di dati di telemetria.
Collettore OpenTelemetry
Le distribuzioni ufficiali di OpenTelemetry includono OpenTelemetry Collector (otelcol) e OpenTelemetry Collector Contrib (otelcol-contrib), disponibili nel repository delle versioni di OpenTelemetry Collector.
Il collettore OpenTelemetry è il componente centrale dell'ecosistema OpenTelemetry, che offre funzioni indipendenti dal fornitore per la raccolta, l'elaborazione e l'esportazione dei dati telemetrici. Per scoprire tutte le sue funzionalità, scarica i file binari eseguibili più recenti dalla pagina delle versioni su GitHub.
Il Collector Contrib di OpenTelemetry amplia il collector di base con componenti aggiuntivi e miglioramenti forniti dalla comunità, offrendo funzioni specializzate per casi d'uso avanzati. Mentre alcuni dei componenti in questo repository fanno parte della distribuzione otelcol, ma la maggior parte dei componenti qui sono disponibili solo come parte della distribuzione otelcol-contrib. È possibile creare distribuzioni personalizzate con il generatore di collector di OpenTelemetry, utilizzando i componenti necessari provenienti dal repository principale, dal repository contrib e da repository di terze parti o interni. Per utilizzare questi miglioramenti per le tue esigenze di raccolta dati telemetrici, scarica i file binari eseguibili più recenti dalla pagina delle versioni di Collector all'indirizzo OpenTelemetry.
Inoltre, le release di OpenTelemetry Collector sono disponibili come file binari dell'immagine del contenitore che assicurano la facilità di distribuzione in vari ambienti.
Attualmente, se si utilizza un ambiente Linux, è possibile installare direttamente il Collector OpenTelemetry tramite l'interfaccia utente di Instana. Per ulteriori informazioni, consultare la sezione "Installazione del collettore di dati " OpenTelemetry " tramite l'interfaccia utente di " Instana ".
Per tutti gli altri ambienti, consultare la sezione «Installazione del Collector» nella documentazione di OpenTelemetry.
Installazione del collettore " OpenTelemetry " tramite l'interfaccia utente di " Instana "
Per installare ed eseguire il Collector di OpenTelemetry tramite l'interfaccia utente di Instana, procedere come segue:
- Nella pagina iniziale dell'interfaccia utente di Instana, fare clic su "Agenti e addetti alla raccolta ".
- Nella pagina " Agenti e collezionisti ", seleziona la scheda "Collezionisti dell' OpenTelemetry ". Qui puoi visualizzare i collettori esistenti con il loro ID e lo stato di integrità.
- Fai clic su «Installa un collettore ».
- Nella pagina " “OpenTelemetry : installazioni dei collector", seleziona il riquadro Linux, Kubernetes o Windows a seconda del sistema di destinazione dell'installazione.
- Esegui i comandi indicati. Ad esempio, la pagina « Linux - installazione automatica (comando singolo)» per selezionare la modalità di distribuzione e implementare il Collector OpenTelemetry.
Dopo aver distribuito il collector, clicca su "Visualizza collector installato" per visualizzarlo sulla mappa dell'infrastruttura su Instana.
instana-collector-installer-latest.sh) che rileva automaticamente l'architettura del sistema.Impostazione degli attributi delle risorse con il Collector di OpenTelemetry
È possibile impostare gli attributi della risorsa con OpenTelemetry Collector. Per ulteriori informazioni, consultare Utilizzo di OpenTelemetry Collector per impostare gli attributi delle risorse.
Casi d'uso del Collector " OpenTelemetry " con " Instana "
OpenTelemetry I dati possono essere trasmessi direttamente sia a un agente Instana sia al backend Instana, data la loro compatibilità con i OTLP/HTTP protocolli e OTLP/gRPC .
OpenTelemetry Collector comprende i seguenti componenti essenziali:
- Ricevitore: raccoglie dati di telemetria da varie fonti e li converte in un formato standardizzato per l'elaborazione.
- Processore: modifica e migliora i dati di telemetria, consentendo attività quali filtraggio, aggregazione e aggiunta di attributi.
- Esportatore: invia dati di telemetria elaborati a destinazioni esterne nel formato richiesto, facilitando l'integrazione con piattaforme di osservabilità e altri strumenti.
Il programma di raccolta OpenTelemetry offre miglioramenti significativi nelle funzioni di elaborazione, manipolazione e debug dei dati, abilitando anche la configurazione di più destinazioni di esportazione dati. Pertanto, l'utilizzo dell'endpoint OTLP di un agente o backend Instana per configurare otlp l'esportatore o otlphttp l'esportatore all'interno del Collector OpenTelemetry garantisce una gestione dei dati efficiente e ottimizzata.
Sebbene il Collector Contrib di OpenTelemetry includa un esportatore specifico per Instana, è preferibile utilizzare un esportatore standard per OTLP, in quanto conforme agli standard e in grado di supportare in modo completo tutti i segnali di dati di OpenTelemetry, inclusi tracciati, metriche e log.
I seguenti esempi mostrano in che modo la configurazione di OpenTelemetry Collector migliora il processo di dati Telemetry:
- Il connettore '
spanmetricspuò essere utilizzato per estrarre le metriche dei segnali dorati dalle campate. - Si consiglia vivamente di utilizzare il
batchprocessore per migliorare l'efficienza dell'elaborazione dei dati. Per ulteriori informazioni, consultare le migliori pratiche per la registrazione dei dati di Instana OpenTelemetry.
Per quanto riguarda il batch processore, consultare la seguente configurazione di esempio, basata su considerazioni relative alle prestazioni per la maggior parte degli scenari. Imposta il timeout sulla durata massima dell'intervallo di trasmissione dei dati:
processors:
batch:
send_batch_size: 5000
send_batch_max_size: 10000
timeout: 180s
...
service:
pipelines:
traces:
receivers: [...]
processors: [..., batch]
exporters: [...]
metrics:
receivers: [...]
processors: [..., batch]
exporters: [...]
Per il connettore 'spanmetrics, vedere la seguente configurazione di esempio.
spanmetrics connettore nella pipeline per l'esportazione delle metriche su Instana.connectors:
spanmetrics:
...
pipelines:
traces:
receivers: [...]
processors: [...]
exporters: [..., spanmetrics]
metrics:
receivers: [..., spanmetrics]
processors: [...]
exporters: [...]
L'esempio seguente mostra una configurazione tipica per il debug dei dati utilizzando OpenTelemetry Collector (a partire dalla v1.17.0 e dalla v0.111.0, utilizzare l'esportatore 'debug invece dell'esportatore 'logging ):
exporters:
debug:
verbosity: detailed
...
pipelines:
traces:
receivers: [...]
processors: [...]
exporters: [..., logging]
metrics:
receivers: [...]
processors: [...]
exporters: [..., logging]
Altre risorse su " OpenTelemetry "
- Esempi di configurazione pratici.
- Guide alla risoluzione dei problemi.
- Modelli di integrazione per diverse tecnologie.
- Soluzioni proposte dalla comunità.