Journalisation de débogage

Pour résoudre les problèmes lors de l’utilisation de l’API Zabbix, de la collecte de données depuis l’agent Zabbix ou de l’envoi de données au serveur ou au proxy Zabbix, vous pouvez activer la journalisation de débogage.

La bibliothèque zabbix_utils utilise le module logging standard de Python.

Pour afficher les messages de débogage détaillés de la bibliothèque :

  1. Importez le module logging de Python dans votre script.
  2. Configurez le système de journalisation pour afficher les messages dans un format lisible et définissez le niveau de journalisation sur DEBUG.
import logging
from zabbix_utils import Getter

logging.basicConfig(
    format=u'[%(asctime)s] %(levelname)s %(message)s',
    level=logging.DEBUG
)

agent = Getter(host='127.0.0.1', port=10050)
resp = agent.get('system.uname')

print(resp.value)

Une fois la journalisation de débogage activée, des informations détaillées sur les requêtes et les réponses sont affichées, par exemple :

[2023-10-01 12:00:01,587] DEBUG Content of the packet: b'ZBXD\x01\x0c\x00\x00\x00\x00\x00\x00\x00system.uname'
[2023-10-01 12:00:01,722] DEBUG Zabbix response header: b'ZBXD\x01C\x00\x00\x00C\x00\x00\x00'
[2023-10-01 12:00:01,723] DEBUG Zabbix response body: Linux test_server 5.15.0-3.60.5.1.el9uek.x86_64
[2023-10-01 12:00:01,724] DEBUG Response from [127.0.0.1:10050]: Linux test_server 5.15.0-3.60.5.1.el9uek.x86_64
Linux test_server 5.15.0-3.60.5.1.el9uek.x86_64