Présentation des intégrations

Présentation

Ce guide décrit comment utiliser les intégrations. Si vous souhaitez découvrir comment créer une nouvelle intégration, consultez la page Créer une nouvelle intégration.

Au plus haut niveau, une intégration correspond à l’assemblage d’un système unifié à partir d’unités habituellement considérées séparément. Avec Datadog, vous pouvez utiliser des intégrations pour rassembler toutes les métriques et tous les logs de votre infrastructure afin d’analyser le système dans son ensemble. Chaque composant, ainsi que son impact sur les autres éléments de votre infrastructure, peuvent être étudiés en détail.

Remarque : nous vous conseillons de mettre en place la collecte de métriques sur vos projets le plus tôt possible dans le processus de développement, mais vous pouvez commencer à n’importe quelle étape.

Datadog propose trois grands types d’intégrations :

  • Les intégrations basées sur l’Agent sont installées avec l’Agent Datadog et utilisent une méthode de classe Python appelée check pour définir les métriques à recueillir.
  • Les intégrations basées sur un système d’authentification (crawler) sont configurées dans l’application Datadog, où vous entrez des identifiants pour récupérer des métriques avec l’API. Il s’agit notamment d’intégrations populaires telles que Slack, AWS, Azure, et PagerDuty.
  • Les intégrations de bibliothèque utilisent l’API Datadog pour vous permettre de surveiller des applications en fonction du langage dans lequel elles sont écrites, comme Node.js ou Python.

Vous pouvez aussi créer un check custom pour définir et envoyer des métriques à Datadog depuis un système interne unique.

Configurer une intégration

Le package de l’Agent Datadog inclut les intégrations officiellement prises en charge par Datadog dans integrations-core. Pour utiliser ces intégrations, téléchargez l’Agent Datadog. Les intégrations développées par la communauté se trouvent dans integrations-extras. Pour en savoir plus sur l’installation ou la gestion de ces intégrations, consultez le guide de gestion des intégrations.

Autorisations

L’autorisation manage_integrations est requise pour interagir avec un carré dʼintégration. Consultez la section relative aux rôles RBAC pour en savoir plus.

Clés d’API et d’application

Pour installer l’Agent Datadog, vous devez disposer d’une clé d’API. Si l’Agent est déjà téléchargé, veillez à configurer votre clé d’API dans le fichier datadog.yaml. Pour utiliser la plupart des fonctionnalités Datadog et envoyer des métriques et des événements, vous devez disposer d’une clé d’application. Accédez à la page API Settings pour gérer vos clés d’API et d’application.

Installation

Si vous souhaitez connecter une intégration basée sur une bibliothèque ou un crawler, des instructions spécifiques à chaque fournisseur sont disponibles sur la page Intégrations. Pour les autres intégrations prises en charge, installez l’Agent Datadog. La plupart des intégrations sont prises en charge sur nos Agents conteneurisés : Docker et Kubernetes. Une fois l’Agent téléchargé, accédez à la page Intégrations pour consulter les instructions dédiées à votre intégration.

Configurer les intégrations de l’Agent

La plupart des paramètres de configuration sont spécifiques à chaque intégration. Configurez les intégrations de l’Agent en accédant au dossier conf.d à la racine du répertoire de configuration de votre Agent. Chaque intégration dispose d’un dossier nommé <NOM_INTÉGRATION>.d, contenant le fichier conf.yaml.example. Cet exemple de fichier énumère toutes les options de configuration disponibles pour cette intégration spécifique.

Pour activer une intégration donnée :

  1. Renommez le fichier conf.yaml.example (dans le dossier <NOM_INTÉGRATION>.d correspondant) en conf.yaml.
  2. Dans le nouveau fichier de configuration, modifiez les paramètres requis avec les valeurs correspondant à votre environnement.
  3. Redémarrez l’Agent Datadog.

Remarque : tous les fichiers de configuration respectent le format décrit sous la spécification @param.

Par exemple, voici le fichier de configuration conf.yaml minimal nécessaire pour recueillir des métriques et des logs de l’intégration apache :

init_config:
  service: apache

instances:
    - apache_status_url: http://localhost/server-status?auto

logs:
    - type: file
      path: /var/log/apache2/access.log
      source: apache
      sourcecategory: http_web_access
    - type: file
      path: /var/log/apache2/error.log
      source: apache
      sourcecategory: http_web_access

Pour surveiller plusieurs instances Apache dans un même check d’Agent, ajoutez des instances supplémentaires à la section instances :

init_config:

instances:
    - apache_status_url: "http://localhost/server-status?auto"
      service: local-apache

    - apache_status_url: "http://<ENDPOINT_APACHE_DISTANT>/server-status?auto"
      service: remote-apache

Intervalle de collecte

L’intervalle de collecte par défaut pour toutes les intégrations Datadog standard est de 15 secondes. Pour modifier l’intervalle de collecte, utilisez le paramètre min_collection_interval. Pour en savoir plus, consultez la rubrique Modification de l’intervalle de collecte.

Tags

L’ajout de tags est essentiel pour être en mesure de filtrer et d’agréger les données envoyées à Datadog depuis plusieurs sources. Pour en savoir plus sur les tags, consultez la section Débuter avec les tags.

Si vous définissez des tags dans le fichier datadog.yaml, ils sont appliqués aux données de toutes vos intégrations. Une fois votre tag défini dans datadog.yaml, toutes les nouvelles intégrations en héritent.

Par exemple, il est conseillé d’utiliser service pour la configuration de l’Agent lors de la surveillance de systèmes distincts et indépendants.

Pour mieux unifier votre environnement, il est également recommandé de configurer le tag env dans l’Agent. Pour en savoir plus, consultez la section relative au tagging de service unifié.

Par défaut, les métriques transmises par les intégrations comprennent des tags découverts automatiquement dans l’environnement. Par exemple, les métriques transmises par un check Redis exécuté à l’intérieur d’un conteneur comprennent des tags associés au conteneur, tels que image_name. Vous pouvez désactiver ce comportement en définissant le paramètre ignore_autodiscovery_tags sur true :

init_config:

ignore_autodiscovery_tags: true

# Insérer le reste de la configuration ici

Validation

Pour valider la configuration de votre Agent et de vos intégrations, lancez la sous-commande status de l’Agent et cherchez votre nouvelle configuration dans la section Checks.

Installer plusieurs intégrations

L’installation de plusieurs intégrations revient nécessite d’ajouter les informations de configuration à un nouveau fichier conf.yaml dans le dossier <INTEGRATIONS>.d. Cherchez les paramètres obligatoires pour la nouvelle intégration dans le fichier conf.yaml.example, ajoutez-les dans le nouveau fichier conf.yaml, puis suivez les mêmes étapes pour valider votre configuration.

Intégrations détectées automatiquement

Si vous avez configuré la collecte de processus, Datadog détecte automatiquement les technologies qui s’exécutent sur vos hosts. Cette opération permet d’identifier les intégrations Datadog qui peuvent vous aider à surveiller ces technologies. Les intégrations détectées automatiquement s’affichent dans la recherche d’intégrations :

Intégrations détectées automatiquement

Chaque intégration possède l’un des trois statuts suivants :

  • Detected : la technologie s’exécute sur un host, mais l’intégration n’a pas été installée ou configurée. Pour cette raison, seule une partie des métriques est recueillie. Configurez l’intégration pour en profiter pleinement. Pour obtenir la liste des hosts qui exécutent une technologie détectée automatiquement, ouvrez le carré de l’intégration, puis sélectionnez l’onglet Hosts.
  • Installed : l’intégration est installée et configurée sur un host.
  • Available : cette catégorie rassemble toutes les intégrations qui ne possèdent pas le statut Installed ni Detected.

Mesures de sécurité

Pour en savoir plus sur la manière dont Datadog traite vos données et sur d’autres aspects de la sécurité, consultez notre documentation dédiée.

Et ensuite ?

Maintenant que votre première intégration est configurée, explorez toutes les métriques envoyées par votre application à Datadog et utilisez ces métriques pour configurer des dashboards et des alertes afin de surveiller vos données.

Découvrez également les solutions Log Management, APM et surveillance Synthetic de Datadog.

Dépannage

Lorsque vous dépannez une intégration, il est nécessaire de commencer par vérifier la validité du YAML en utilisant un plug-in dans votre éditeur de code ou en faisant appel à l’un des nombreux outils en ligne dédiés. Ensuite, la procédure consiste à suivre toutes les étapes de la section Dépannage de l’Agent.

Si vos problèmes persistent, contactez l’assistance Datadog.

Termes clés

conf.yaml
Le fichier conf.yaml doit être créé dans le dossier conf.d/<NOM_INTÉGRATION>.d à la racine du répertoire de configuration de votre Agent. Utilisez ce fichier pour connecter des intégrations à votre système et pour configurer leurs paramètres.
Check custom
Si vous utilisez un système privé que vous souhaitez surveiller, ou si vous voulez envoyer des métriques supplémentaires à partir d’une intégration, vous pouvez créer un check custom pour définir des métriques et les envoyer à Datadog. Toutefois, si vous cherchez à surveiller une application disponible librement, un service public ou un projet open source qui ne bénéficie d’aucune intégration, envisagez de créer une nouvelle intégration plutôt qu’un check custom.
datadog.yaml
Il s’agit du fichier de configuration principal au sein duquel vous définissez la façon dont l’Agent dans son ensemble interagit avec ses propres intégrations et avec votre système. Utilisez ce fichier pour mettre à jour les clés d’API, les proxies, les tags de host et d’autres paramètres généraux.
Événement
Les événements sont des messages informatifs sur votre système. Ils sont transmis à l’Events Explorer pour vous permettre de créer des monitors en fonction de ces événements.
Instance
Chaque instance de ce que vous surveillez doit être définie et mappée dans le fichier conf.yaml. Par exemple, pour l’intégration http_check, vous devez définir le nom associé à l’instance de l’endpoint HTTP dont vous surveillez l’uptime et le downtime. Vous pouvez surveiller plusieurs instances dans une même intégration en définissant toutes les instances dans le fichier conf.yaml.
<NOM_INTÉGRATION>.d
Si votre configuration est complexe, vous pouvez la décomposer en plusieurs fichiers YAML, puis placer tous les fichiers dans le dossier <NOM_INTÉGRATION>.d pour définir la configuration. L’Agent charge tous les fichiers YAML valides dans le dossier <NOM_INTÉGRATION>.d.
Logging
Si le système que vous surveillez génère des logs, personnalisez les logs que vous envoyez à Datadog à l’aide de la solution Log Management.
metadata.csv
Ce fichier énumère et stocke les métriques recueillies par chaque intégration.
Métriques
La liste des données recueillies à partir de votre système par chaque intégration. La liste des métriques de chaque intégration se trouve dans le fichier metadata.csv correspondant à cette intégration. Pour en savoir plus sur les métriques, consultez la page sur les métriques dédiée aux développeurs. Vous pouvez également configurer des métriques custom afin d’ajouter des métriques qui ne sont pas proposées par défaut avec l’intégration.
Paramètres
Utilisez les paramètres dans le fichier conf.yaml pour contrôler les accès entre la source de données de votre intégration et l’Agent. Le fichier conf.yaml.example de chaque intégration énumère l’ensemble des paramètres obligatoires et facultatifs.
Check de service
Les checks de service sont un type de monitor utilisé pour surveiller le statut de disponibilité du service. Pour en savoir plus, consultez le guide sur les checks de service.
Tags
Les tags permettent de personnaliser les métriques pour les trier et les visualiser comme bon vous semble.

Pour aller plus loin

PREVIEWING: may/unit-testing