zabbix

Supported OS Linux Mac OS Windows

Intégration1.1.1

Présentation

Connectez-vous à Zabbix pour :

  • Surveiller Zabbix via l’Agent Datadog
  • Envoyer des alertes Zabbix à Datadog sous la forme d’événements dans le flux d’événements

Configuration

Le check Zabbix n’est pas inclus avec le package de l’Agent Datadog : vous devez donc l’installer.

Installation

Pour l’Agent v7.21+/6.21+, suivez les instructions ci-dessous afin d’installer le check Zabbix sur votre host. Consultez la section Utiliser les intégrations de la communauté pour effectuer une installation avec l’Agent Docker ou avec des versions antérieures de l’Agent.

  1. Exécutez la commande suivante pour installer l’intégration de l’Agent :

    datadog-agent integration install -t datadog-zabbix==<INTEGRATION_VERSION>
    
  2. Configurez votre intégration comme une intégration de base.

Configuration

  1. Assurez-vous que le fuseau d’horaire de votre serveur Zabbix est défini sur UTC. Pour en savoir plus sur les fuseaux horaires de Zabbix, consultez la documentation Zabbix (en anglais).

  2. Modifiez le fichier zabbix.d/conf.yaml dans le dossier conf.d/ à la racine du répertoire de configuration de votre Agent pour commencer à recueillir vos données de performance Zabbix. Consultez le fichier d’exemple zabbix.d/conf.yaml pour découvrir toutes les options de configuration disponibles.

  3. Redémarrez l’Agent.

Collecte d’événements

Créer un type de support Datadog
  1. Accédez à Administration > Media Types > Create Media Type.
  2. Ajoutez des paramètres au webhook à l’aide des template variables Zabbix. Ajoutez votre api_key Datadog et les template variables Zabbix suivantes sous forme de paramètres :
ParamètreValeur
api_keyVotre clé d'API Datadog
event_date{EVENT.DATE}
event_name{EVENT.NAME}
event_nseverity{EVENT.NSEVERITY}
event_tags{EVENT.TAGSJSON}
event_time{EVENT.TIME}
event_value{EVENT.VALUE}
item_name{ITEM.NAME}
alert_message{ALERT.MESSAGE}
alert_subject{ALERT.SUBJECT}
  1. Définissez Name sur Datadog, Type sur Webhook et Script sur le code suivant :
    try {
        Zabbix.Log(4, '[datadog webhook] received value=' + value);

        var params = JSON.parse(value);
        var req = new CurlHttpRequest();
        req.AddHeader('Content-Type: application/json');
        var webhook_url = 'https://app.datadoghq.com/intake/webhook/zabbix?api_key=' + params.api_key;
        var webhook_data = value;
        var resp = req.Post(webhook_url, webhook_data);
        if (req.Status() != 202) {
            throw 'Response code: '+req.Status();
        }
        Zabbix.Log(4, '[datadog webhook] received response with status code ' + req.Status() + '\n' + resp);
    } catch (error) {
        Zabbix.Log(4, '[datadog webhook] event creation failed json : ' + webhook_data)
        Zabbix.Log(4, '[datadog webhook] event creation failed : ' + error);
    }
    return JSON.stringify({});
  1. Vérifiez que le webhook fonctionne correctement à l’aide du bouton Test.
Attribuer le support de webhook à un utilisateur existant
  1. Après avoir configuré le type de support du webhook, accédez à Administration > Users et créez un utilisateur Zabbix dédié pour représenter le webhook. Par exemple, utilisez l’alias Datadog pour le webhook Datadog. À l’exception du support, vous pouvez conserver les valeurs par défaut de tous les paramètres, car cet utilisateur ne se connecte pas à Zabbix.
  2. Dans le profil de l’utilisateur, accédez à l’onglet Media et ajoutez un webhook avec les informations requises. Si le webhook n’utilise pas le champ Send to, saisissez une combinaison de caractères pris en charge pour contourner les critères de validation.
  3. Accordez à cet utilisateur des autorisations de lecture (au minimum) pour tous les hosts pour lesquels des alertes doivent être envoyées.
Configurer une action d’alerte pour le webhook
  1. Accédez à Configuration > Actions.
  2. Dans la liste déroulante du titre de page, sélectionnez le type d’action requis.
  3. Cliquez sur Create Action.
  4. Attribuez un nom à l’action.
  5. Choisissez les conditions à remplir pour effectuer les opérations.
  6. Choisissez les opérations à effectuer.

Validation

Lancez la sous-commande status de l’Agent et cherchez zabbix dans la section Checks.

Données collectées

Métriques

Événements

Les alertes Zabbix sont recueillies en tant qu’événements dans le flux d’événements Datadog.

Checks de service

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.

PREVIEWING: may/embedded-workflows