Intégration à OpenTelemetry à l'aide d' OpenTelemetry Collector
En utilisant le collecteur OpenTelemetry, vous pouvez définir des attributs de ressource ou transférer les données d' OpenTelemetry s vers un agent Instana ou un backend Instana.
OpenTelemetry Collector est l'un des outils OpenTelemetry les plus populaires qui offre une implémentation indépendante du fournisseur pour la réception, le traitement et l'exportation des données de télémétrie.
Collecteur OpenTelemetry
Les distributions officielles d' OpenTelemetry comprennent OpenTelemetry Collector (otelcol) et OpenTelemetry Collector Contrib (otelcol-contrib), qui sont disponibles dans le référentiel des versions de OpenTelemetry Collector.
Le OpenTelemetry Collector est le composant central de l'écosystème OpenTelemetry, offrant des fonctions indépendantes des fournisseurs pour la collecte, le traitement et l'exportation des données de télémétrie. Pour découvrir toutes ses fonctionnalités, téléchargez les derniers fichiers binaires exécutables sur la page des versions de GitHub.
Le module « Collector Contrib » d' OpenTelemetry, qui complète le collecteur de base avec des composants supplémentaires et des améliorations proposées par la communauté, offre des fonctionnalités spécialisées pour des cas d'utilisation avancés. Alors que certains des composants de ce référentiel font partie de la distribution otelcol, la plupart des composants ici ne sont disponibles que dans le cadre de la distribution otelcol-contrib. Vous pouvez créer vos propres distributions personnalisées à l'aide du générateur de collecteurs de l' OpenTelemetry, en utilisant les composants dont vous avez besoin issus du référentiel principal, du référentiel contrib, ainsi que de référentiels tiers ou internes. Pour tirer parti de ces améliorations dans le cadre de votre collecte de données de télémétrie, téléchargez les derniers fichiers binaires exécutables à partir de la page « Collector releases » du site OpenTelemetry.
De plus, les éditions d' OpenTelemetry Collector sont disponibles sous forme de fichiers binaires d'image de conteneur qui facilitent le déploiement dans divers environnements.
À l'heure actuelle, si vous utilisez un environnement Linux, vous pouvez installer directement le collecteur OpenTelemetry via l'interface utilisateur Instana. Pour plus d'informations, consultez la section « Installation du collecteur d' OpenTelemetry s à l'aide de l'interface utilisateur d' Instana ».
Pour tous les autres environnements, consultez la section « Installer le collecteur » dans la documentation d' OpenTelemetry.
Installation du collecteur d' OpenTelemetry s à l'aide de l'interface utilisateur d' Instana
Pour installer et exécuter le collecteur d' OpenTelemetry s à l'aide de l'interface utilisateur d' Instana, procédez comme suit :
- Sur la page d'accueil de l'interface utilisateur d' Instana, cliquez sur « Agents et collecteurs ».
- Sur la page « Agents et collecteurs », sélectionnez l'onglet « Collecteurs d' OpenTelemetry s ». Vous pouvez consulter ici les collecteurs existants, avec leur identifiant et leur état de santé.
- Cliquez sur « Installer un collecteur ».
- Sur la page « “OpenTelemetry collector installations », sélectionnez la vignette Linux, Kubernetes ou Windows en fonction du système sur lequel vous souhaitez effectuer l'installation.
- Exécutez les commandes fournies. Par exemple, la page « Linux - installation automatique (commande unique) » pour choisir le mode de déploiement et déployer le collecteur OpenTelemetry.
Une fois le collecteur déployé, cliquez sur « Afficher le collecteur installé » pour le visualiser sur la carte de votre infrastructure sur Instana.
instana-collector-installer-latest.sh) qui détecte automatiquement l'architecture de votre système.Définition des attributs des ressources à l'aide du collecteur « OpenTelemetry »
Vous pouvez définir des attributs de ressource avec le collecteur OpenTelemetry . Pour plus d'informations, voir Utilisation d' OpenTelemetry Collector pour définir des attributs de ressource.
Cas d'utilisation du collecteur « OpenTelemetry » avec « Instana »
OpenTelemetry Les données peuvent être transmises directement soit à un agent Instana, soit au serveur Instana, grâce à leur compatibilité avec les OTLP/gRPCOTLP/HTTP protocoles et.
Le collecteur OpenTelemetry comprend les composants essentiels suivants:
- Récepteur: Collecte les données de télémétrie à partir de diverses sources et les convertit en un format normalisé pour le traitement.
- Processeur: modifie et améliore les données de télémétrie, permettant des tâches telles que le filtrage, l'agrégation et l'ajout d'attributs.
- Exportateur: envoie des données de télémétrie traitées à des destinations externes dans le format requis, facilitant l'intégration avec des plateformes d'observabilité et d'autres outils.
Le collecteur OpenTelemetry offre des améliorations significatives dans les fonctions de traitement, de manipulation et de débogage des données, tout en activant la configuration de plusieurs destinations d'exportation de données. Par conséquent, l'utilisation du point de terminaison OTLP d'un agent ou d'un backend Instana pour configurer otlp l'exportateur ou otlphttp l'exportateur au sein du collecteur OpenTelemetry garantit une gestion des données efficace et rationalisée.
Bien que le module « Collector Contrib » de l' OpenTelemetry e intègre un exportateur Instana spécifique, il est préférable d'utiliser un exportateur OTLP standard en raison de sa conformité aux normes et de sa prise en charge complète de tous les signaux de données OpenTelemetry, y compris les traces, les métriques et les journaux.
Les exemples suivants montrent comment la configuration d' OpenTelemetry Collector améliore le processus de données de télémétrie:
- Le connecteur "
spanmetricspeut être utilisé pour extraire des métriques de signaux dorés des travées. - Il est vivement recommandé d'utiliser le
batchprocesseur pour améliorer l'efficacité du traitement des données. Pour plus d'informations, consultez les bonnes pratiques relatives à la journalisation d' Instana OpenTelemetry.
En ce qui concerne le batch processeur, consultez l'exemple de configuration suivant, qui tient compte des performances pour la plupart des scénarios. Réglez le délai d'expiration sur la durée maximale de transmission de vos données :
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: [...]
Pour le connecteur " spanmetrics, voir l'exemple de configuration suivant.
spanmetrics connecteur dans le pipeline d'exportation des métriques vers Instana.connectors:
spanmetrics:
...
pipelines:
traces:
receivers: [...]
processors: [...]
exporters: [..., spanmetrics]
metrics:
receivers: [..., spanmetrics]
processors: [...]
exporters: [...]
L'exemple suivant montre une configuration typique pour déboguer des données en utilisant le collecteur OpenTelemetry (à partir de v1.17.0 et v0.111.0, utilisez l'exportateur 'debug au lieu de l'exportateur 'logging ) :
exporters:
debug:
verbosity: detailed
...
pipelines:
traces:
receivers: [...]
processors: [...]
exporters: [..., logging]
metrics:
receivers: [...]
processors: [...]
exporters: [..., logging]