WAPT Enterprise offre des fonctionnalités de reporting avancées.
En effet, qui mieux que vous pouvez savoir ce dont vous avez besoin dans votre rapport.
Avec WAPT nous vous proposons d’écrire vos requêtes SQL dont le résultat s’affichera dans la Console WAPT.
Vous pouvez obtenir le dernier diagramme de structure de la base de données à partir du paquet tis-db-structure-diagram-wapt. Une fois le paquet installé, vous trouverez différents formats du diagramme dans C:/ProgramFiles(x64)/waptdbdiagram (Windows) ou /opt/wapt/dbdiagram (Linux, MacOS).
Le concepteur de requêtes vous offre la possibilité de modifier vos propres requêtes sur la base de données PostgreSQL de WAPT.
Note
La base de données PostgreSQL est définie en mode Lecture seule, de sorte que les requêtes exécutées à partir du Report Designer qui tentent de mettre à jour, de supprimer ou d’insérer des données échouent.
Vous pouvez importer des requêtes SQL depuis le dépôt Tranquil IT en cliquant sur Reporting ‣ Importer des requêtes… ‣ Depuis une Url ou sur Reporting ‣ Importer des requêtes… ‣ Depuis un fichier.
Si vous choisissez d’importer une requête depuis le dépôt Tranquil IT, sélectionnez une ou plusieurs requêtes, puis cliquez sur Sauvegarder les requêtes sélectionnées. Les nouvelles requêtes apparaîtront dans la Console WAPT.
Importer une requête SQL dans la Console WAPT depuis une URL¶
Si vous importez une requête depuis un fichier, sélectionnez votre requête dans l’explorateur de fichiers. La requête peut être un fichier au format .query ou .json.
Importer une requête SQL dans la Console WAPT à partir d’un fichier¶
Note
Quelle que soit la méthode que vous utilisez pour importer des requêtes, n’oubliez pas de cliquer sur le bouton Sauvegarder pour sauvegarder les requêtes importées.
Pour créer une nouvelle requête, cliquer sur Reporting ‣ Mode conception ‣ Nouvelle requête.
Conception d’un rapport de requête SQL dans la Console WAPT¶
Indication
Pour renommer une requête, appuyer sur la touche F2.
Dans l’encadré du haut, vous pouvez écrire votre requête SQL.
Pour éditer / modifier / Sauvegarder vos requêtes :
Le bouton Recharger est utilisé pour recharger les requêtes sauvegardées sur le serveur, par exemple, si un collègue vient juste d’éditer une nouvelle requête.
Le bouton Nouvelle requête va ajouter une requête vide à la liste.
Le bouton Supprimer la requête va supprimer la requête sélectionnée sur le Serveur WAPT.
Le bouton Enregistrer tout va sauvegarder votre requête au Serveur WAPT.
Le bouton Exécuter va exécuter la requête sélectionnée.
Le bouton Exporter vers tableur va exporter le résultat de votre requête dans un feuille de calcul.
Le bouton Dupliquer va dupliquer une requête existante pour éviter de repartir d’une requête vide.
Vous disposez de plusieurs options lorsque vous cliquez avec le bouton droit de la souris sur une requête.
Options disponibles pour un rapport de requête SQL dans la Console WAPT¶
Liste des actions disponibles sur une sélection de requête dans la Console WAPT¶
Nom
Description
Exécuter
Exécute la requête SQL.
Éditer
Modifie la requête SQL.
Éditer le nom
Modifie le nom de la requête SQL.
Exporter vers un tableur
Exporte le résultat de la requête SQL vers un fichier formaté en csv.
Dupliquer
Duplique la requête SQL.
Exporter les requêtes vers un fichier…
Exporte les requêtes SQL sélectionnées vers un fichier. Cette méthode permet de partager ou de sauvegarder les requêtes SQL.
Importer des requêtes…
Importe des requêtes à partir d’un fichier.
Supprimer des requêtes
Supprime les requêtes sélectionnées.
Note
Les requêtes sont sauvegardées dans la base de données PostgreSQL WAPT.
Le raccourci CTRL+espace vous permet de construire votre requête de façon plus efficace.
9.3. Utiliser des requêtes comme filtre dans l’onglet inventaire¶
Vous pouvez créer un filtre dans l’onglet Inventaire basé sur une requête SQL. You devez ajouter une colonne UUID pour pouvoir utiliser le filtre dans l’onglet Inventaire.
Dans cet exemple, nous utilisons une requête qui liste les machines sur lesquelles le logiciel 7zip a été installé.
Indication
Cette méthode est puissante car elle permet de rechercher des logiciels qui n’ont pas été installés à l’aide de WAPT.
Sur le résultat de la requête, faites un clic droit sur host_id, qui est un identifiant unique, sélectionner cette entrée et cliquer sur le bouton Choisir comme Host UUID.
Filtrer sur l’UUID de la machine pour créer une vue dynamique dans l’onglet d’inventaire¶
Lorsque vous avez terminé, enregistrer la requête en appuyant sur le bouton Sauvegarder puis aller dans l’onglet Inventaire.
Ensuite, activer le panneau Recherche avancée et sélectionner la requête dans le champ déroulant Filtrer les machines basé sur la requête SQL.
Filtrer l’inventaire des machines à l’aide d’une requête SQL¶
Vous verrez alors une liste de machines basée sur la requête sélectionnée.
Note
Il est également possible de cliquer sur le bouton « Afficher les machines sélectionnées dans l’inventaire » en faisant un clic droit après avoir sélectionné une ou plusieurs machines apparaissant dans le résultat de votre requête.
Auparavant , il est nécessaire de cliquer sur « Choisir comme UUID de l’hôte ».
Vous pouvez aussi trouver plus d’exemple de requêtes sur le Forum Tranquil IT.
N’hésitez pas à partager vos requêtes sur le même forum avec une explication de ce que fais votre requête, idéalement avec une capture d’écran ou une table affichant un échantillon du résultat de votre requête.
Parfois, la version du logiciel ou son architecture fait partie intégrante du nom du logiciel. Quand le logiciel s’enregistre dans l’inventaire du Serveur WAPT, il apparaît en différents logiciels alors qu’ils sont pareils pour nous humains.
Pour résoudre ce problème, le nom des logiciels peut être normalisé dans WAPT. Aller dans l’onglet Inventaire des logiciels.
Normaliser le nom du logiciel dans la Console WAPT¶
Cliquez sur Normaliser les nom de logiciels dans le menu Outils.
Sélectionnez le logiciel à standardiser, par exemple, toutes les version différentes d’Adobe Flash player.
Sur la colonne Normalisé, appuyez sur F2 pour assigner un nom standard sur le logiciel sélectionné. Puis appuyez sur Entrée.
Note
Pour sélectionner plusieurs programmes, sélectionnez les avec les combinaisons de touches shift-up/down.
Vous pouvez aussi marquer un logiciel comme Mise à jour Windows ou Banni (Appuyez sur labarreespace dans la colonne correspondante).
Appuyer sur le bouton Sauvegarder pour charger les changements sur le Serveur WAPT.
Vous pouvez maintenant lancer vos requêtes avec ce nom standardisé.
Indication
La case à cocher Afficher les machines permet de voir les titres des logiciels qui sont installés sur les machines.
Liste des machines avec le logiciel sélectionné dans l’onglet Inventaire des logiciels¶
9.5.1. Utiliser des titres de logiciels normalisés comme filtre dans l’onglet inventaire¶
Vous pouvez créer un filtre dans l’onglet Inventaire qui utilise des noms de logiciels normalisés. Pour ce faire, normaliser les noms des logiciels dans Inventaire des logiciels puis sélectionner une ou plusieurs machines. Dans l’onglet Inventaire des logiciels des machines sélectionnées, glissez et déposez le logiciel dans la liste d’inventaire, cela créera une vue.
Indication
Cette méthode est puissante car elle permet de rechercher des logiciels qui n’ont pas été installés à l’aide de WAPT.
Ne pas oublier de normaliser les noms des logiciels au préalable.
Modifiez pg_hba.conf de la version PostgreSQL utilisée. Dans /etc/postgresql/15/main/pg_hba.conf pour Debian et /var/lib/pgsql/15/data/pg_hba.conf pour RedHat et dérivées # IPv4 local connections section, ajoutez votre adresse.
host wapt all 192.168.0.65/32 md5where 192.168.0.65 is your IP address that is authorizedto connect to the WAPT database.
Autorisez PostgreSQL à écouter sur toutes les interfaces dans /etc/postgresql/15/main/postgresql.conf pour Debian et /var/lib/pgsql/15/data/postgresql.conf pour RedHat et dérivées, section Connection Settings.
listen_addresses='*'
Redémarrez le service pour votre version de PostgreSQL.
systemctlrestartpostgresql@12-main.service
Pour se connecter au PostgreSQL sur le Serveur WAPT.
sudo-upostgrespsqlwapt
Donnez ensuite un mot de passe à l’utilisateur wapt.
wapt=#ALTERUSERwaptWITHPASSWORD'PASSWORD';
Exemple de tableau de bord Grafana pour WAPT
{"apiVersion":"dashboard.grafana.app/v2","kind":"Dashboard","metadata":{"name":"adc6lwq","namespace":"default","uid":"b039ce16-9e11-4ea2-92ce-50b7faafbb43","resourceVersion":"1782302720169013","generation":64,"creationTimestamp":"2026-05-26T15:00:04Z","labels":{"grafana.app/deprecatedInternalID":"1143436040355840"},"annotations":{"grafana.app/createdBy":"user:efmppjwoz6ha8c","grafana.app/folder":"","grafana.app/saved-from-ui":"Grafana v13.0.2 (3fcdbc5a)","grafana.app/updatedBy":"user:efmppjwoz6ha8c","grafana.app/updatedTimestamp":"2026-06-24T12:05:20Z"}},"spec":{"annotations":[{"kind":"AnnotationQuery","spec":{"query":{"kind":"DataQuery","group":"grafana","version":"v0","datasource":{"name":"-- Grafana --"},"spec":{}},"enable":true,"hide":true,"iconColor":"rgba(0, 211, 255, 1)","name":"Annotations & Alerts","builtIn":true}}],"cursorSync":"Off","description":"Bandeau 1","editable":true,"elements":{"panel-10":{"kind":"Panel","spec":{"id":10,"title":"Répartion des hôtes par statut","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n CASE\r\n WHEN host_status = 'OK' THEN 'OK'\r\n WHEN host_status = 'TO-UPGRADE' THEN 'En attente upgrade'\r\n WHEN host_status = 'ERROR' THEN 'En erreur'\r\n ELSE 'Hors ligne'\r\n END AS status,\r\n COUNT(*) AS total\r\nFROM hosts\r\nGROUP BY status\r\nORDER BY total DESC;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"piechart","version":"13.0.2","spec":{"options":{"displayLabels":["percent"],"legend":{"displayMode":"list","placement":"right","showLegend":true},"pieType":"donut","reduceOptions":{"calcs":[],"fields":"","values":true},"sort":"desc","tooltip":{"hideZeros":false,"mode":"single","sort":"none"}},"fieldConfig":{"defaults":{"color":{"mode":"palette-classic"},"custom":{"hideFrom":{"legend":false,"tooltip":false,"viz":false}}},"overrides":[{"matcher":{"id":"byName","options":"En attente upgrade"},"properties":[{"id":"color","value":{"fixedColor":"yellow","mode":"fixed"}}]},{"matcher":{"id":"byName","options":"OK"},"properties":[{"id":"color","value":{"fixedColor":"green","mode":"fixed"}}]}]}}}}},"panel-11":{"kind":"Panel","spec":{"id":11,"title":"répartition des machines par tranche d'espace libre","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n CASE\r\n WHEN free_percent < 15 THEN '0-14%'\r\n WHEN free_percent < 30 THEN '15-29%'\r\n WHEN free_percent < 50 THEN '30-49%'\r\n WHEN free_percent < 75 THEN '50-74%'\r\n ELSE '75-100%'\r\n END AS tranche,\r\n COUNT(*) AS machines\r\nFROM (\r\n SELECT\r\n (\r\n (host_metrics->'local_drives'->'C'->'FreeSpace')::float\r\n /\r\n NULLIF((host_metrics->'local_drives'->'C'->'Size')::float, 0)\r\n ) * 100 AS free_percent\r\n FROM hosts\r\n WHERE os_name ~ 'Windows'\r\n AND host_metrics->'local_drives'->'C' IS NOT NULL\r\n) t\r\nGROUP BY tranche;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"piechart","version":"13.0.2","spec":{"options":{"displayLabels":["percent"],"legend":{"displayMode":"table","placement":"right","showLegend":true,"values":[]},"pieType":"donut","reduceOptions":{"calcs":[],"fields":"","values":true},"sort":"desc","tooltip":{"hideZeros":false,"mode":"single","sort":"none"}},"fieldConfig":{"defaults":{"color":{"mode":"palette-classic"},"custom":{"hideFrom":{"legend":false,"tooltip":false,"viz":false}},"fieldMinMax":false},"overrides":[{"matcher":{"id":"byFrameRefID"},"properties":[]},{"matcher":{"id":"byName","options":"15-29%"},"properties":[{"id":"color","value":{"fixedColor":"red","mode":"fixed"}}]},{"matcher":{"id":"byName","options":"30-49%"},"properties":[{"id":"color","value":{"fixedColor":"orange","mode":"fixed"}}]},{"matcher":{"id":"byName","options":"50-74%"},"properties":[{"id":"color","value":{"fixedColor":"yellow","mode":"fixed"}}]},{"__systemRef":"hideSeriesFrom","matcher":{"id":"byNames","options":{"mode":"exclude","names":["machines"],"prefix":"All except:","readOnly":true}},"properties":[{"id":"custom.hideFrom","value":{"legend":false,"tooltip":true,"viz":true}}]}]}}}}},"panel-12":{"kind":"Panel","spec":{"id":12,"title":"Liste des systèmes d'informations","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n os_name AS \"Operating_System\",\r\n COUNT(*) AS \"Nb_Machines\"\r\nFROM hosts\r\nGROUP BY os_name\r\nORDER BY COUNT(*) DESC;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"piechart","version":"13.0.2","spec":{"options":{"displayLabels":["percent"],"legend":{"displayMode":"list","placement":"right","showLegend":true},"pieType":"donut","reduceOptions":{"calcs":[],"fields":"","values":true},"sort":"desc","tooltip":{"hideZeros":false,"mode":"single","sort":"none"}},"fieldConfig":{"defaults":{"color":{"mode":"palette-classic"},"custom":{"hideFrom":{"legend":false,"tooltip":false,"viz":false}}},"overrides":[{"matcher":{"id":"byName","options":"Windows 11 Pro"},"properties":[{"id":"color","value":{"fixedColor":"blue","mode":"fixed"}}]},{"matcher":{"id":"byName","options":"debian"},"properties":[{"id":"color","value":{"fixedColor":"orange","mode":"fixed"}}]},{"matcher":{"id":"byName","options":"almalinux"},"properties":[{"id":"color","value":{"fixedColor":"purple","mode":"fixed"}}]}]}}}}},"panel-13":{"kind":"Panel","spec":{"id":13,"title":"Total agents WUA","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"","version":"v0","spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT COUNT(*) AS nb_postes_wua\r\nFROM hosts\r\nWHERE waptwua_status IS NOT NULL;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"textMode":"auto","wideLayout":true},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"color":{"mode":"fixed","fixedColor":"blue"}},"overrides":[]}}}}},"panel-14":{"kind":"Panel","spec":{"id":14,"title":"Répartition des statuts WUA des hôtes","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n CASE\r\n WHEN waptwua_status->>'status' = 'OK' THEN 'OK'\r\n WHEN waptwua_status->>'status' = 'NEED-SCAN' THEN 'Scan requis'\r\n WHEN waptwua_status->>'status' = 'PENDING_REBOOT' THEN 'Redémarrage requis'\r\n WHEN waptwua_status->>'status' = 'NEED-INSTALL' THEN 'Installation requise'\r\n WHEN waptwua_status->>'status' = 'ERROR' THEN 'Erreur'\r\n END AS status,\r\n COUNT(*) AS total\r\nFROM hosts\r\nWHERE waptwua_status->>'status' IN (\r\n 'OK',\r\n 'NEED-SCAN',\r\n 'PENDING_REBOOT',\r\n 'NEED-INSTALL',\r\n 'ERROR'\r\n)\r\nGROUP BY status\r\nORDER BY total DESC;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"piechart","version":"13.0.2","spec":{"options":{"displayLabels":["percent"],"legend":{"displayMode":"list","placement":"right","showLegend":true},"pieType":"donut","reduceOptions":{"calcs":[],"fields":"","values":true},"sort":"desc","tooltip":{"hideZeros":false,"mode":"single","sort":"none"}},"fieldConfig":{"defaults":{"color":{"mode":"palette-classic"},"custom":{"hideFrom":{"legend":false,"tooltip":false,"viz":false}}},"overrides":[{"matcher":{"id":"byName","options":"Scan requis"},"properties":[{"id":"color","value":{"fixedColor":"yellow","mode":"fixed"}}]},{"matcher":{"id":"byName","options":"Redémarrage requis"},"properties":[{"id":"color","value":{"fixedColor":"blue","mode":"fixed"}}]}]}}}}},"panel-18":{"kind":"Panel","spec":{"id":18,"title":"Scan","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'NEED-SCAN' THEN 1 END) AS hosts_wua_need_scan,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'NEED-SCAN' THEN 1 END)::numeric\r\n / COUNT(CASE WHEN waptwua_status IS NOT NULL THEN 1 END)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_wua_need_scan\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"textMode":"auto","wideLayout":true},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"hosts_wua_need_scan"},"properties":[{"id":"color","value":{"fixedColor":"yellow","mode":"fixed"}}]},{"matcher":{"id":"byName","scope":"series","options":"percent_wua_need_scan"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"green","value":0},{"color":"green","value":25},{"color":"yellow","value":50},{"color":"orange","value":75},{"color":"red","value":90}]}}]}]}}}}},"panel-19":{"kind":"Panel","spec":{"id":19,"title":"Error","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'ERROR' THEN 1 END) AS hosts_wua_error,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'ERROR' THEN 1 END)::numeric\r\n / COUNT(CASE WHEN waptwua_status IS NOT NULL THEN 1 END)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_wua_error\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"textMode":"auto","wideLayout":true},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"hosts_wua_error"},"properties":[{"id":"color","value":{"fixedColor":"red","mode":"fixed"}}]},{"matcher":{"id":"byName","scope":"series","options":"percent_wua_error"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"green","value":0},{"color":"green","value":25},{"color":"yellow","value":50},{"color":"orange","value":75},{"color":"red","value":90}]}}]}]}}}}},"panel-2":{"kind":"Panel","spec":{"id":2,"title":"Total hôtes","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT COUNT(*) AS total_agents_wapt FROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"center","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"textMode":"auto","wideLayout":true},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"color":{"mode":"fixed","fixedColor":"blue"}},"overrides":[]}}}}},"panel-20":{"kind":"Panel","spec":{"id":20,"title":"Reboot","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'PENDING_REBOOT' THEN 1 END) AS hosts_wua_pending_reboot,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'PENDING_REBOOT' THEN 1 END)::numeric\r\n / COUNT(CASE WHEN waptwua_status IS NOT NULL THEN 1 END)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_wua_pending_reboot\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"textMode":"auto","wideLayout":true},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"hosts_wua_pending_reboot"},"properties":[{"id":"color","value":{"fixedColor":"blue","mode":"fixed"}}]},{"matcher":{"id":"byName","scope":"series","options":"percent_wua_pending_reboot"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"dark-green","value":0},{"color":"green","value":25},{"color":"yellow","value":50},{"color":"orange","value":75},{"color":"red","value":90}]}}]}]}}}}},"panel-21":{"kind":"Panel","spec":{"id":21,"title":"OK","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'OK' THEN 1 END) AS hosts_wua_ok,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN waptwua_status->>'status' = 'OK' THEN 1 END)::numeric\r\n / COUNT(CASE WHEN waptwua_status IS NOT NULL THEN 1 END)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_wua_ok\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false},"showPercentChange":false,"textMode":"auto","wideLayout":true},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"hosts_wua_ok"},"properties":[{"id":"color","value":{"fixedColor":"green","mode":"fixed"}}]},{"matcher":{"id":"byName","scope":"series","options":"percent_wua_ok"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"green","value":0},{"color":"green","value":25},{"color":"yellow","value":50},{"color":"orange","value":75},{"color":"red","value":90}]}}]}]}}}}},"panel-22":{"kind":"Panel","spec":{"id":22,"title":"Top 5 des paquets installés :","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n package,\r\n COUNT(DISTINCT host_id) AS nb_postes\r\nFROM hostpackagesstatus\r\nWHERE install_status = 'OK'\r\n AND section = 'base'\r\nGROUP BY package\r\nORDER BY nb_postes DESC\r\nLIMIT 5;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"barchart","version":"13.0.2","spec":{"options":{"barRadius":0,"barWidth":0.97,"fullHighlight":false,"groupWidth":0.7,"legend":{"calcs":[],"displayMode":"list","placement":"right","showLegend":true},"orientation":"horizontal","showValue":"never","stacking":"none","tooltip":{"hideZeros":false,"mode":"single","sort":"none"},"xTickLabelRotation":0,"xTickLabelSpacing":0},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"color":{"mode":"fixed","fixedColor":"blue"},"custom":{"axisBorderShow":false,"axisCenteredZero":false,"axisColorMode":"text","axisLabel":"","axisPlacement":"auto","fillOpacity":80,"gradientMode":"none","hideFrom":{"legend":false,"tooltip":false,"viz":false},"lineWidth":1,"scaleDistribution":{"type":"linear"},"thresholdsStyle":{"mode":"off"}}},"overrides":[{"matcher":{"id":"byName","options":"nb_postes"},"properties":[{"id":"color","value":{"fixedColor":"blue","mode":"fixed"}}]}]}}}}},"panel-23":{"kind":"Panel","spec":{"id":23,"title":"Postes non connecté depuis 10 jours","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n computer_name,\r\n (last_seen_on::timestamptz)::date AS last_seen_date\r\nFROM hosts\r\nWHERE\r\n last_seen_on::timestamptz < CURRENT_TIMESTAMP - INTERVAL '10 days'\r\nORDER BY\r\n last_seen_on::timestamptz;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"table","version":"13.0.2","spec":{"options":{"cellHeight":"sm","showHeader":true},"fieldConfig":{"defaults":{"thresholds":{"mode":"absolute","steps":[{"value":0,"color":"green"},{"value":80,"color":"red"}]},"custom":{"align":"auto","cellOptions":{"type":"auto"},"footer":{"reducers":[]},"inspect":false}},"overrides":[]}}}}},"panel-5":{"kind":"Panel","spec":{"id":5,"title":"OK","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN host_status = 'OK' THEN 1 END) AS hosts_ok,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN host_status = 'OK' THEN 1 END)::numeric\r\n / COUNT(*)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_ok\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"center","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":[],"fields":"","values":true},"showPercentChange":false,"textMode":"value_and_name","wideLayout":true},"fieldConfig":{"defaults":{"unit":"none","thresholds":{"mode":"percentage","steps":[{"value":0,"color":"green"},{"value":0,"color":"red"},{"value":25,"color":"red"},{"value":50,"color":"#EF843C"},{"value":75,"color":"yellow"},{"value":90,"color":"semi-dark-green"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"percent_ok"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"green","value":0},{"color":"dark-red","value":0},{"color":"red","value":25},{"color":"orange","value":50},{"color":"yellow","value":75},{"color":"green","value":90}]}}]},{"matcher":{"id":"byName","scope":"series","options":"hosts_ok"},"properties":[{"id":"color","value":{"fixedColor":"green","mode":"fixed"}}]}]}}}}},"panel-7":{"kind":"Panel","spec":{"id":7,"title":"Upgrade","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN host_status = 'TO-UPGRADE' THEN 1 END) AS hosts_upgrade,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN host_status = 'TO-UPGRADE' THEN 1 END)::numeric\r\n / COUNT(*)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_upgrade\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"center","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":[],"fields":"","values":true},"showPercentChange":false,"textMode":"value_and_name","wideLayout":true},"fieldConfig":{"defaults":{"unit":"none","thresholds":{"mode":"percentage","steps":[{"value":0,"color":"green"},{"value":0,"color":"dark-green"},{"value":25,"color":"green"},{"value":50,"color":"yellow"},{"value":75,"color":"orange"},{"value":90,"color":"red"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"percent_upgrade"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"green","value":0},{"color":"dark-green","value":0},{"color":"green","value":25},{"color":"yellow","value":50},{"color":"orange","value":75},{"color":"red","value":90}]}}]},{"matcher":{"id":"byName","scope":"series","options":"hosts_upgrade"},"properties":[{"id":"color","value":{"fixedColor":"yellow","mode":"fixed"}}]}]}}}}},"panel-8":{"kind":"Panel","spec":{"id":8,"title":"Erreurs","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN host_status = 'ERROR' THEN 1 END) AS hosts_errors,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN host_status = 'ERROR' THEN 1 END)::numeric\r\n / COUNT(*)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_errors\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"center","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":[],"fields":"","values":true},"showPercentChange":false,"textMode":"value_and_name","wideLayout":true},"fieldConfig":{"defaults":{"unit":"none","thresholds":{"mode":"percentage","steps":[{"value":0,"color":"green"},{"value":0,"color":"red"},{"value":25,"color":"red"},{"value":50,"color":"#EF843C"},{"value":75,"color":"yellow"},{"value":90,"color":"semi-dark-green"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"percent_errors"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"green","value":0},{"color":"green","value":0},{"color":"green","value":25},{"color":"yellow","value":50},{"color":"orange","value":75},{"color":"red","value":90}]}}]},{"matcher":{"id":"byName","scope":"series","options":"hosts_errors"},"properties":[{"id":"color","value":{"fixedColor":"red","mode":"fixed"}}]}]}}}}},"panel-9":{"kind":"Panel","spec":{"id":9,"title":"Hors ligne","description":"","links":[],"data":{"kind":"QueryGroup","spec":{"queries":[{"kind":"PanelQuery","spec":{"query":{"kind":"DataQuery","group":"grafana-postgresql-datasource","version":"v0","datasource":{"name":"afmps43obr2f4c"},"spec":{"dataset":"wapt","editorMode":"code","format":"table","rawQuery":true,"rawSql":"SELECT\r\n COUNT(CASE WHEN host_status <> 'OK' THEN 1 END) AS hosts_offline,\r\n ROUND(\r\n (\r\n COUNT(CASE WHEN host_status <> 'OK' THEN 1 END)::numeric\r\n / COUNT(*)::numeric\r\n ) * 100,\r\n 1\r\n ) AS percent_offline\r\nFROM hosts;","sql":{"columns":[{"parameters":[],"type":"function"}],"groupBy":[{"property":{"type":"string"},"type":"groupBy"}],"limit":50}}},"refId":"A","hidden":false}}],"transformations":[],"queryOptions":{}}},"vizConfig":{"kind":"VizConfig","group":"stat","version":"13.0.2","spec":{"options":{"colorMode":"value","graphMode":"area","justifyMode":"center","orientation":"auto","percentChangeColorMode":"standard","reduceOptions":{"calcs":[],"fields":"","values":true},"showPercentChange":false,"textMode":"value_and_name","wideLayout":true},"fieldConfig":{"defaults":{"unit":"none","thresholds":{"mode":"percentage","steps":[{"value":0,"color":"green"},{"value":0,"color":"red"},{"value":25,"color":"red"},{"value":50,"color":"#EF843C"},{"value":75,"color":"yellow"},{"value":90,"color":"semi-dark-green"}]},"color":{"mode":"thresholds"}},"overrides":[{"matcher":{"id":"byName","scope":"series","options":"percent_offline"},"properties":[{"id":"unit","value":"percent"},{"id":"thresholds","value":{"mode":"absolute","steps":[{"color":"dark-green","value":0},{"color":"dark-green","value":0},{"color":"green","value":25},{"color":"yellow","value":50},{"color":"orange","value":75},{"color":"red","value":90}]}}]},{"matcher":{"id":"byName","scope":"series","options":"hosts_ok"},"properties":[{"id":"color","value":{"fixedColor":"yellow","mode":"fixed"}}]}]}}}}}},"layout":{"kind":"RowsLayout","spec":{"rows":[{"kind":"RowsLayoutRow","spec":{"title":"Statut général des Hôtes","collapse":false,"hideHeader":false,"fillScreen":false,"layout":{"kind":"GridLayout","spec":{"items":[{"kind":"GridLayoutItem","spec":{"x":0,"y":0,"width":5,"height":6,"element":{"kind":"ElementReference","name":"panel-2"}}},{"kind":"GridLayoutItem","spec":{"x":5,"y":0,"width":7,"height":6,"element":{"kind":"ElementReference","name":"panel-10"}}},{"kind":"GridLayoutItem","spec":{"x":12,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-5"}}},{"kind":"GridLayoutItem","spec":{"x":15,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-7"}}},{"kind":"GridLayoutItem","spec":{"x":18,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-8"}}},{"kind":"GridLayoutItem","spec":{"x":21,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-9"}}}]}}}},{"kind":"RowsLayoutRow","spec":{"title":"Vue d'ensemble des systèmes d'exploitation et de l'espace disque C:","collapse":false,"layout":{"kind":"GridLayout","spec":{"items":[{"kind":"GridLayoutItem","spec":{"x":0,"y":0,"width":12,"height":8,"element":{"kind":"ElementReference","name":"panel-12"}}},{"kind":"GridLayoutItem","spec":{"x":12,"y":0,"width":12,"height":8,"element":{"kind":"ElementReference","name":"panel-11"}}}]}}}},{"kind":"RowsLayoutRow","spec":{"title":"WAPTWUA","collapse":false,"layout":{"kind":"GridLayout","spec":{"items":[{"kind":"GridLayoutItem","spec":{"x":0,"y":0,"width":5,"height":6,"element":{"kind":"ElementReference","name":"panel-13"}}},{"kind":"GridLayoutItem","spec":{"x":5,"y":0,"width":7,"height":6,"element":{"kind":"ElementReference","name":"panel-14"}}},{"kind":"GridLayoutItem","spec":{"x":12,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-21"}}},{"kind":"GridLayoutItem","spec":{"x":15,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-18"}}},{"kind":"GridLayoutItem","spec":{"x":18,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-19"}}},{"kind":"GridLayoutItem","spec":{"x":21,"y":0,"width":3,"height":6,"element":{"kind":"ElementReference","name":"panel-20"}}}]}}}},{"kind":"RowsLayoutRow","spec":{"title":"Autres","collapse":false,"layout":{"kind":"GridLayout","spec":{"items":[{"kind":"GridLayoutItem","spec":{"x":0,"y":0,"width":12,"height":8,"element":{"kind":"ElementReference","name":"panel-22"}}},{"kind":"GridLayoutItem","spec":{"x":12,"y":0,"width":12,"height":8,"element":{"kind":"ElementReference","name":"panel-23"}}}]}}}}]}},"links":[],"liveNow":false,"preload":false,"tags":[],"timeSettings":{"timezone":"browser","from":"now-6h","to":"now","autoRefresh":"","autoRefreshIntervals":["5s","10s","30s","1m","5m","15m","30m","1h","2h","1d"],"hideTimepicker":false,"fiscalYearStartMonth":0},"title":"WAPT Dashboard","variables":[],"preferences":{"layout":{"kind":"GridLayout","spec":{"items":[]}}}}}