Se rendre au contenu

Browser monitoring

Pour superviser les sites Web avec Zabbix, il existe trois méthodes:

  • Web scénarios
  • Item HTTP Agent
  • Exécuter une commande système (ex: Curl)

Elles sont cependant trop limités pour des applications web modernes (javascript, MFA, etc…).

« Browser monitoring » s’interface avec Selenium (retenue par Zabbix SIA), il s’agit d’une solution libre reconnue et utilisée par de nombreuses autres solutions gratuites et payantes.

L’implémentation du « Browser monitoring »  a été réalisée en étendant le moteur de javascript existant (utilisé dans le pré-processing notamment) pour permettre de piloter un contrôleur Selenium externe

Note: Zabbix ne fournit pas Selenium lors de son installation.

L’activation du « Browser monitoring » se fait via les directives suivantes dans le fichier de configuration du Zabbix Server:

Le template fournit dans Zabbix 7.0 permet de superviser un site web via son url et de récupérer un certains nombre de métriques:

Ainsi qu’une capture d’écran de la page affichée à la fin du script par le navigateur (on notera au passage le nouveau type d’item « Binary » pour stocker les captures d’écrans en base64)

Un dashboard prêt à l’emploi (par item « Browser ») est également disponible:

Cependant, nous sommes face à une première implémentation marquée comme « Expérimentale » dans la documentation officielle.

Elle vient donc avec un certain nombre de limitations:

  • Impossibilité d’utiliser l’extension navigateur « Selenium IDE »1 qui permet l’enregistrement et l’export de scénarios Web multi étapes.
  • Les scénarios Web doivent être développés intégralement en javascript2 (captures d’écran multiples, gestion d’erreurs, etc..). Des exemples sont présents dans la documentation3.
  • Implémentation limitée (due à l’utilisation du moteur javascript existant)
  • Les widgets de Zabbix ne permettent pas de naviguer par « session »
  1. https://chromewebstore.google.com/detail/selenium-ide/mooikfkahbdckldjjndioackbalphokd
  2. https://www.zabbix.com/documentation/7.0/en/manual/config/items/preprocessing/javascript/browser_item_javascript_objects?hl=Browser%2Cbrowser
  3. https://www.zabbix.com/documentation/7.0/en/manual/config/items/itemtypes/browser?hl=Browser%2Cmonitoring%2Cbrowser


Proxy, haute disponibilité et repartition des charges