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:

  1. Nella pagina iniziale dell'interfaccia utente di Instana, fare clic su "Agenti e addetti alla raccolta ".
  2. 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à.
  3. Fai clic su «Installa un collettore ».
  4. Nella pagina " “OpenTelemetry : installazioni dei collector", seleziona il riquadro Linux, Kubernetes o Windows a seconda del sistema di destinazione dell'installazione.
  5. 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.

Nota: l'interfaccia utente mette a disposizione uno script di installazione semplificato (instana-collector-installer-latest.sh) che rileva automaticamente l'architettura del sistema.

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:

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.

Nota: la maggior parte delle metriche derivanti dai servizi relativi all' Instana e si basano sugli span. Nella maggior parte dei casi, non è necessario integrare il 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 "

Per esempi di " OpenTelemetry " selezionati dalla comunità, best practice e modelli di integrazione, consultare il repository " OpenTelemetry " all'indirizzo Instana. Questa risorsa fornisce le seguenti informazioni:
  • Esempi di configurazione pratici.
  • Guide alla risoluzione dei problemi.
  • Modelli di integrazione per diverse tecnologie.
  • Soluzioni proposte dalla comunità.