[comment]: # ({d9bf322f-f34132a6})
# 2 Scénario réel

[comment]: # ({/d9bf322f-f34132a6})

[comment]: # ({608fb726-d43d02d4})
#### Aperçu

Cette section présente un exemple concret, étape par étape, de l’utilisation de la supervision web.

La supervision web de Zabbix sera utilisée pour surveiller le frontend de Zabbix. L’objectif est de déterminer s’il est disponible, s’il fournit le bon contenu et à quelle vitesse il fonctionne. Pour y parvenir, plusieurs étapes sont nécessaires, notamment la vérification de la disponibilité de la première page, la connexion avec un nom d’utilisateur et un mot de passe, la vérification de la réussite de la connexion, la déconnexion et la confirmation de la déconnexion.

[comment]: # ({/608fb726-d43d02d4})

[comment]: # ({51af514b-51af514b})
#### Scénario

[comment]: # ({/51af514b-51af514b})

[comment]: # ({a0f82e40-6b72dd59})
##### Ajouter un nouveau scénario web

Allez dans *Collecte de données → Hôtes*, sélectionnez un hôte et cliquez sur *Web* dans la ligne de cet hôte.  
Cliquez ensuite sur *Créer un scénario web*.

![](../../../assets/en/manual/web_monitoring/new_scenario.png){width="600"}


Dans le nouveau formulaire de scénario, renseignez les champs suivants :

- **Nom** - Vérification de l'interface
- **Intervalle de mise à jour** - 1m
- **Tentatives** - 1
- **agent** - Zabbix

Dans la section *Variables*, ajoutez deux variables : *{password}* et *{user}*.  
Saisissez comme valeurs vos identifiants utilisateur Zabbix existants.

Pour des raisons de sécurité, il est recommandé de créer un utilisateur distinct avec des permissions minimales pour les besoins de la supervision.

Si nécessaire, allez dans l'onglet *Tags* et ajoutez des tags de scénario web.

:::notetip
Une fois entièrement configuré, ce scénario web ajoutera automatiquement un élément Zabbix trapper à l'hôte.  
Vous pouvez utiliser les tags de scénario web pour identifier rapidement les éléments et déclencheurs associés ou pour rechercher dans les données collectées.  
Par exemple, des tags appropriés pour ce tutoriel sont `component: web-scenario` et/ou `target: frontend`. 
:::

[comment]: # ({/a0f82e40-6b72dd59})

[comment]: # ({86824bcb-475cbb1a})
##### Configurer les étapes du scénario web

Passez à l'onglet *Étapes* et définissez les étapes du scénario. Cliquez sur le bouton *Ajouter* pour ajouter une étape individuelle.

[comment]: # ({/86824bcb-475cbb1a})

[comment]: # ({75dcae2e-d4aa4f48})
###### Champs communs

Pour chaque étape décrite ci-dessous, renseignez les champs suivants en plus des champs spécifiques à l'étape :

- **URL** - l'URL de l'interface Zabbix
- **Timeout** - 15 s
- **Codes d'état requis** - 200

[comment]: # ({/75dcae2e-d4aa4f48})

[comment]: # ({40559ed2-c26001e1})
###### Étape 1 du scénario web

Vérifiez que la première page répond correctement, renvoie le code de réponse HTTP 200 et contient le texte "Zabbix SIA".

- Dans le champ **Name**, saisissez *First page*.
- Dans le champ **Required string**, saisissez *Zabbix SIA*. 
- Renseignez les [champs communs](#common-fields). 

Une fois la configuration de l'étape terminée, cliquez sur le bouton *Add*.

![](../../../assets/en/manual/web_monitoring/scen_step1.png){width="600"}

[comment]: # ({/40559ed2-c26001e1})

[comment]: # ({713aa628-f896c160})
###### Étape 2 du scénario Web

Connectez-vous à l'interface Zabbix en utilisant les macros (variables) définies au niveau du scénario - *{user}* et *{password}*.

- Dans le champ **Name**, saisissez *Login*.
- Dans la section **Post fields**, ajoutez trois champs post :
    - *name* avec la valeur *{user}*
    - *password* avec la valeur *{password}*
    - *enter* avec la valeur *Sign in*
- Dans la section **Variables**, ajoutez une nouvelle variable *{csrf_token}* avec la valeur *regex:([0-9a-z]{64})*.
Cette variable capturera la valeur du jeton CSRF attribué afin de la réutiliser à l'[étape 4](#web-scenario-step-4).
- Renseignez les [champs communs](#common-fields).

![](../../../assets/en/manual/web_monitoring/scen_step2.png){width="600"}

::: noteimportant
Notez que l'interface Zabbix utilise une redirection JavaScript lors de la connexion, de sorte que la connexion doit être effectuée en premier, et que les fonctionnalités réservées aux utilisateurs connectés ne peuvent être vérifiées qu'aux étapes suivantes. De plus, l'étape de connexion doit utiliser l'URL complète du fichier **index.php**.
:::

[comment]: # ({/713aa628-f896c160})

[comment]: # ({635690e6-1a116229})
###### Étape 3 du scénario web

Après vous être connecté, vérifiez la réussite en recherchant une chaîne visible uniquement lorsque vous êtes connecté - par exemple, *Administration*.

- Dans le champ **Name**, saisissez *Login check*.
- Dans le champ **Required string**, saisissez *Administration*. 
- Renseignez les [champs communs](#common-fields).

![](../../../assets/en/manual/web_monitoring/scen_step3.png){width="600"}

[comment]: # ({/635690e6-1a116229})

[comment]: # ({06efb3e5-834e4858})
###### Étape 4 du scénario web

Une fois l’accessibilité de l’interface et la connexion vérifiées, ajoutez une étape de déconnexion - sinon la base de données Zabbix sera encombrée de nombreux enregistrements de sessions ouvertes.

- Dans le champ **Name**, saisissez *Logout*.
- Dans la section **Post fields**, ajoutez deux champs de post :
    - *reconnect* avec la valeur *1*
    - *\_csrf_token* avec la valeur *{csrf_token}*.
- Renseignez les [champs communs](#common-fields).

Cette étape utilise la variable {csrf_token} obtenue à l’[étape 2](#web-scenario-step-2)

![](../../../assets/en/manual/web_monitoring/scen_step4.png){width="600"}

[comment]: # ({/06efb3e5-834e4858})

[comment]: # ({5bdfc52a-cff4750f})
###### Étape 5 du scénario web

Pour confirmer la déconnexion, vérifiez la chaîne **Username**.

- Dans le champ **Name**, saisissez *Logout check*.
- Dans le champ **Required string**, saisissez *Username*.
- Renseignez les [champs communs](#common-fields).

![](../../../assets/en/manual/web_monitoring/scen_step5.png){width="600"}

[comment]: # ({/5bdfc52a-cff4750f})

[comment]: # ({2b6fe488-8ef2e8b2})
###### Configuration complète des étapes

Une configuration complète des étapes du scénario web devrait ressembler à ceci :

![](../../../assets/en/manual/web_monitoring/scenario_steps.png){width="600"}

[comment]: # ({/2b6fe488-8ef2e8b2})

[comment]: # ({c2a12418-3e213338})
##### Vérifier les résultats

Enregistrez le scénario de surveillance web terminé.

Le scénario sera ajouté à l'hôte. Pour afficher les informations du scénario web, accédez à *Surveillance → Hôtes*, localisez l'hôte dans la liste et cliquez sur le lien Web dans la dernière colonne.

![](../../../assets/en/manual/web_interface/web_monitoring.png){width="600"}

Cliquez sur le nom du scénario pour voir des statistiques plus détaillées :

![](../../../assets/en/manual/web_monitoring/scenario_details2.png){width="600"}

[comment]: # ({/c2a12418-3e213338})
