Débuter avec l'Agent

Aperçu

Ce guide présente l’Agent Datadog et couvre :

Qu’est-ce que l’Agent Datadog ?

L’Agent Datadog est un logiciel qui s’exécute sur vos hôtes. Il collecte des événements et des métriques depuis les hôtes et les envoie à Datadog, où vous pouvez analyser vos données de surveillance et de performance.

L’Agent peut s’exécuter sur :

  • Hôtes locaux (Windows, Linux, macOS)
  • Environnements conteneurisés (Docker, Kubernetes)
  • Centres de données sur site

Vous pouvez également installer et configurer l’Agent en utilisant des outils de gestion de configuration tels que Chef, Puppet ou Ansible.

L’Agent peut collecter 75 à 100 métriques au niveau système toutes les 15 à 20 secondes. Avec une configuration supplémentaire, il peut envoyer des données en direct, des journaux et des traces des processus en cours d’exécution à Datadog. L’Agent Datadog est open source, et son code source est disponible sur GitHub à DataDog/datadog-agent.

Le fichier de configuration de l’Agent

Le fichier de configuration principal de l’Agent est datadog.yaml. Les paramètres requis sont :

Consultez le fichier d’exemple config_template.yaml pour toutes les options de configuration disponibles. Vous pouvez ajuster les fichiers de configuration de l’Agent pour tirer parti d’autres fonctionnalités de Datadog.

Installation

Prérequis

  1. Créez un compte Datadog.

  2. Ayez votre clé API Datadog à portée de main.

Configuration

Utilisez Fleet Automation, le flux de travail intégré de Datadog, pour installer, mettre à niveau, configurer et dépanner l’Agent Datadog sur un seul hôte ou à grande échelle.

Consultez la documentation de l’Agent pour une configuration supplémentaire de l’Agent pour votre plateforme spécifique.

Données collectées par l’Agent

Pour vous donner une visibilité complète sur votre infrastructure, l’Agent Datadog rapporte des métriques sur sa propre santé et sa configuration, ainsi que des métriques recueillies à partir de vos hôtes et services via ses vérifications par défaut.

Métriques de l’Agent

L’Agent rapporte les métriques suivantes à Datadog à son sujet. Ces métriques fournissent des informations sur les hôtes ou conteneurs ayant des Agents en cours d’exécution, sur le moment où chaque Agent a démarré, et sur la version de Python que l’Agent utilise.

MétriqueDescription
datadog.agent.runningUne valeur de 1 si l’Agent fonctionne et remonte des données à Datadog, étiqueté avec la version de l’Agent.
datadog.agent.startedUn décompte de 1 chaque fois que l’Agent démarre.
datadog.agent.python.versionUne valeur de 1, étiquetée avec la version de Python.

Consultez l’intégration Agent Metrics pour obtenir la liste complète des métriques de l’Agent.

Vérifications

En fonction de votre plateforme, l’Agent présente plusieurs checks principaux activés par défaut qui recueillent des métriques.

VérificationMétriquesPlateformes
CPUSystemAll
DiskDiskAll
IOSystemAll
MemorySystemAll
NetworkNetworkAll
NTPNTPTous
UptimeSystemAll
File HandleSystemAll except Mac
LoadSystemAll except Windows
DockerDockerDocker
WinprocSystemWindows

Pour recueillir des métriques provenant d’autres technologies, consultez la page relative aux intégrations.

Vérifications de service

La configuration de base de l’Agent permet d’obtenir les checks de service suivants :

  • datadog.agent.up: Retourne OK si l’Agent se connecte à Datadog.
  • datadog.agent.check_status: Retourne CRITICAL si une vérification de l’Agent ne parvient pas à envoyer des métriques à Datadog ; sinon retourne OK

Ces vérifications peuvent être utilisées dans Datadog pour visualiser l’état de l’Agent à travers des moniteurs et des tableaux de bord en un coup d’œil. Voir Aperçu des vérifications de service pour en savoir plus.

Configurations et fonctionnalités avancées

Il existe des différences clés entre l’installation des Agents sur un hôte et dans un environnement conteneurisé :

  • Différences de configuration :

    • Hôte : L’Agent est configuré à l’aide d’un fichier YAML.
    • Conteneur : Les options de configuration sont passées à l’aide de variables d’environnement, par exemple :
    `DD_API_KEY` # Datadog API key
    `DD_SITE`    # Datadog site
    
  • Détection des intégrations :

    • Host : Integrations sont identifiées à travers le fichier de configuration de l’Agent.
    • Conteneur : Integrations sont automatiquement identifiées grâce à la fonctionnalité Autodiscovery de Datadog. Voir Basic Agent Autodiscovery pour en savoir plus.

De plus, consultez le Docker Agent ou Kubernetes pour un guide sur l’exécution de l’Agent dans un environnement conteneurisé.

Les tags ajoutent une couche supplémentaire de métadonnées à vos métriques et événements. Ils vous permettent de définir le périmètre et de comparer vos données dans les visualisations de Datadog. Lorsque des données sont envoyées à Datadog depuis plusieurs hôtes, le marquage de ces informations vous permet de vous concentrer sur les données qui vous intéressent le plus à visualiser.

Par exemple, disons que vous avez des données collectées auprès de différentes équipes et que vous êtes uniquement intéressé par les métriques de l’équipe alpha, en marquant ces hôtes spécifiques avec le tag team:alpha ou team:bravo, vous avez la possibilité de filtrer les métriques qui sont marquées avec team:alpha. Voir Commencer avec les tags pour en savoir plus sur le marquage de vos données.

  1. Localisez le fichier de configuration principal de votre Agent. Pour Ubuntu, l’emplacement du fichier est /etc/datadog-agent/datadog.yaml.

  2. Dans le fichier datadog.yaml, localisez le paramètre tags. Les tags au niveau de l’hôte peuvent être définis dans la configuration datadog.yaml pour appliquer des tags à toutes les métriques, traces et journaux transférés depuis cet hôte.

    ## @param tags  - list of key:value elements - optional
    ## @env DD_TAGS - space separated list of strings - optional
    ## List of host tags. Attached in-app to every metric, event, log, trace, and service check emitted by this Agent.
    ##
    ## This configuration value merges with `DD_EXTRA_TAGS`, allowing some
    ## tags to be set in a configuration file (`tags`), and additional tags to be added
    ## with an environment variable (`DD_EXTRA_TAGS`).
    ##
    ## Learn more about tagging: https://docs.datadoghq.com/tagging/
    #
    # tags:
    #   - team:infra
    #   - <TAG_KEY>:<TAG_VALUE>
    
  3. Décommentez le paramètre tags et l’exemple de tag fourni team:infra. Vous pouvez également ajouter votre propre tag personnalisé, par exemple test:agent_walkthrough.

    ## @param tags  - list of key:value elements - optional
    ## @env DD_TAGS - space separated list of strings - optional
    ## List of host tags. Attached in-app to every metric, event, log, trace, and service check emitted by this Agent.
    ##
    ## This configuration value merges with `DD_EXTRA_TAGS`, allowing some
    ## tags to be set in a configuration file (`tags`), and additional tags to be added
    ## with an environment variable (`DD_EXTRA_TAGS`).
    ##
    ## Learn more about tagging: https://docs.datadoghq.com/tagging/
    #
    tags:
       - team:infra
       - test:agent_walkthrough
    
  4. Redémarrez l’Agent en exécutant la commande de redémarrage de l’Agent. La commande de redémarrage d’Ubuntu :

    sudo service datadog-agent restart
    
  5. Après quelques minutes, retournez à la page Résumé des métriques et cliquez sur la métrique datadog.agent.started. En plus des tags par défaut host et version, vous pouvez également voir le tag team et tous les tags personnels que vous avez ajoutés. Vous pouvez également filtrer les métriques par le champ Tag en haut de la page.

  6. Allez à la page Explorateur d’événements et trouvez les tags personnalisés affichés avec le dernier événement de l’Agent.

Vous pouvez confirmer que l’Agent fonctionne correctement en vérifiant ses métriques par défaut dans l’interface utilisateur de Datadog. Allez à la page Résumé des métriques et recherchez la métrique datadog.agent.started ou la métrique datadog.agent.running. Si ces métriques ne sont pas visibles immédiatement, il peut falloir quelques minutes à l’Agent pour envoyer les données à Datadog.

Cliquez sur l’une des métriques et un panneau de métrique s’ouvre. Ce panneau montre des métadonnées supplémentaires sur l’endroit où ces métriques sont collectées et toutes les balises associées. Si aucun tag n’est configuré sur un hôte, vous ne devriez voir que les tags par défaut que Datadog attribue aux métriques, y compris version et host. Consultez la section ci-dessus sur la configuration des tags via les fichiers de configuration de l’Agent pour en savoir plus sur la façon d’ajouter des tags.

Explorez d’autres métriques par défaut telles que ntp.offset ou system.cpu.idle.

La quantité d’espace et de ressources que l’Agent utilise dépend de la configuration et des données que l’Agent envoie. Au début, vous pouvez vous attendre à environ 0,08 % d’utilisation du CPU en moyenne avec un espace disque d’environ 880 Mo à 1,3 Go.

Consultez la rubrique Charge de l’Agent pour en savoir plus sur ces benchmarks.

La collecte des journaux, des traces et des données processus peut être activée via le fichier de configuration de l’Agent. Ces fonctionnalités ne sont pas activées par défaut. Par exemple, dans le fichier de configuration, le paramètre logs_enabled est défini sur faux.

##################################
## Log collection Configuration ##
##################################

## @param logs_enabled - boolean - optional - default: false
## @env DD_LOGS_ENABLED - boolean - optional - default: false
## Enable Datadog Agent log collection by setting logs_enabled to true.
#
# logs_enabled: false

D’autres fonctionnalités Datadog peuvent être configurées par l’intermédiaire du fichier de configuration de l’Agent, notamment :

Tout au long de votre configuration, lorsque la documentation fait référence au fichier datadog.yaml ou au fichier de configuration de l’Agent, c’est le fichier que vous devez configurer.

Commandes

Consultez la section Commandes de l’Agent pour démarrer, arrêter ou redémarrer votre Agent.

Dépannage

Pour obtenir de l’aide pour le dépannage de l’Agent :

Lectures complémentaires

Prochaines étapes