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.
Exécutez la commande suivante pour installer l’intégration de l’Agent :
datadog-agent integration install -t datadog-zabbix==<INTEGRATION_VERSION>
Configurez votre intégration comme une intégration de base.
Configuration
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).
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.
Redémarrez l’Agent.
Collecte d’événements
Créer un type de support Datadog
- Accédez à Administration > Media Types > Create Media Type.
- 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ètre | Valeur |
---|
api_key | Votre 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} |
- 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({});
- Vérifiez que le webhook fonctionne correctement à l’aide du bouton Test.
Attribuer le support de webhook à un utilisateur existant
- 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. - 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.
- Accordez à cet utilisateur des autorisations de lecture (au minimum) pour tous les hosts pour lesquels des alertes doivent être envoyées.
- Accédez à Configuration > Actions.
- Dans la liste déroulante du titre de page, sélectionnez le type d’action requis.
- Cliquez sur Create Action.
- Attribuez un nom à l’action.
- Choisissez les conditions à remplir pour effectuer les opérations.
- 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.