Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Scroll Ignore
scroll-viewporttrue
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmlfalse
Panel
titleSommaire

Table of Contents
stylenone

Les Paramètres

Globalement, il y a 4 types de paramètres :

Nom et formatValeur par défautDescription et Syntaxe

filter0 : expression~expression~...
...
filter9 : ...

aucun filtre défini => tous les éléments sont retournés

  • ~ ayant le sens de "et" 
  • expression de la forme :  critère:valeur0^^valeur1 
    • ^^ a le sens de "ou"

plusieurs filtres peuvent être utilisés ( filter0 , filter1, ...), chaque élément correspondant à au moins un des filtres sera retourné en résultat de la requête.

Si il y a plusieurs filtre, les éléments correspondant au filtre0 seront retournés ainsi que les éléments correspondant au filtre1, ainsi que ....

sort: propriete1:order1~propriete2:order2~...

father_name:asc

  • ~ ayant le sens de "et" 
  • propriete étant une des propriétés disponible en sortie de la requête
  • order valant asc ou desc

output_format: valeur

elements_on_same_level (ou non utilisé pour certaines requêtes)

  • valeur valant checks_attached_to_father ou elements_on_same_level

ouput_field:propriete1~propriete2~...

spécifique à chaque requête

  • ~ ayant le sens de "et" 
  • propriete étant une des propriétés disponible en sortie de la requête
Warning
titleIMPORTANT

Par défaut, les appels utilisent tous ces paramètres, mais certaines routes ont des exceptions

filterX ( Filtres )
Anchor
filterX
filterX

Les filtres ont pour formes :

  • filterX : expression~expression
    • ~ ayant le sens de "et" 
    • expression de la forme : critère:valeur0^^valeur1
      • ^^ a le sens de "ou"
  • X vaut de 0 à 9.
  • Chaque élément correspondant à au moins un des filtres sera retourné.

Liste des critères et leurs valeurs possibles:

NomMatchingTypeValeurExemple d’expression

status

correspond exactement

Tableau

0 pour OK1 pour ATTENTION2 pour CRITIQUE3 pour INCONNU

0^^1^^2

context

correspond exactement

Tableau

NOTHING, ACKNOWLEDGED, PARTIAL-ACKNOWLEDGED, INHERITED-ACKNOWLEDGED, DOWNTIME, PARTIAL-DOWNTIME, INHERITED-DOWNTIME, FLAPPING, PARTIAL-FLAPPING, DISABLED

NOTHING^^FLAPPING

is_status_confirmed

correspond exactement

( insensible à la casse )

Booléen

True / False

True

type

correspond exactement

Tableau

HOST, CLUSTER, CHECK, CHECK_HOST, CHECK_CLUSTER

CHECK^^HOST

father_name

correspond exactement ( insensible à la casse )

Tableau

Permet de lister les noms exacts des hôtes ou des clusters.

Si vous désirez filtrer des hôtes avec une chaîne et des clusters avec un autre, il vous faut faire 2 filtres avec type=HOST et type=CLUSTER.

bordeaux^^rennes

father_name_contains

contient ( insensible à la casse )

Tableau

Permet de lister des chaines que l'on cherche dans les hôtes ou des clusters.

Si vous désirez filtrer des hôtes avec une chaîne et des clusters avec un autre, il vous faut faire 2 filtres avec type=HOST et type=CLUSTER.

bor^^renn 
 father_uuid

correspond exactement

 TableauUUID des hôtes / clusters4a893fbbcb0047b8a1922bce91e3dfdg

check_name

correspond exactement

( insensible à la casse )

Tableau

Permet de lister les noms de checks exacts recherchés.CPU Usage^^Disk Usage

check_name_contains

contient ( insensible à la casse )

Tableau

Permet de lister les chaines que l'on cherche dans les noms de  check.CPU^^Disk 
 check_uuid

correspond exactement

 TableauUUID des checks.4a893fbbcb0047b8a1922bce91e3decf

description

contient ( insensible à la casse )

Texte


Bordeaux

address

contient ( insensible à la casse )

Texte


192.168.1.20

realm

correspond exactement

Tableau

nom complet des royaumes

Paris^^Bordeaux^^CORSE

notification_contacts

correspond exactement

Tableau

nom complet de modèle de l'utilisateur

user1^^user2

notification_contact_groups

correspond exactement

Tableau

nom complet de groupe d'utilisateur


father_templates

correspond exactement

Tableau 

nom complet de modèle d'hôte ou de cluster

linux^^http

host_groups

correspond exactement

Tableau

nom complet de groupe d'hôte

ERP_bordeaux

business_impact

correspond exactement

Entier

0, 1, 2, 3, 4, 5

4

status_since

correspond à la contrainte de date

Contrainte de date

LATER-THAN|nb secondes 

OLDER-THAN|nb secondes 

LATER-THAN|60 

Plus récent que 60 secondes

 status_confirmed_sincecorrespond à la contrainte de dateContrainte de date

LATER-THAN|nb secondes 

OLDER-THAN|nb secondes 

LATER-THAN|60 

Plus récent que 60 secondes

last_check

correspond à la contrainte de date

Contrainte de date

LATER-THAN|nb secondes 

OLDER-THAN|nb secondes 

OLDER-THAN|60 

Plus ancien que 60 secondes

next_check

correspond à la contrainte de date


Contrainte de date

IN-MORE-THAN|nb secondes

IN-LESS-THAN|nb secondes

IN-LESS-THAN|300

Dans moins de 5 minutes


Exemple filtrant tous les éléments qui sont de statut CRITIQUE, et dont le contexte est soit pris en compte ( ACKNOWLEDGED ) ou en maintenance ( DOWNTIME 

Code Block
languagejs
themeEmacs
titleExemple de définition du paramètre filter
"filter0=context:DOWNTIME^^ACKNOWLEDGED~status:2~type:check^^cluster^^host~father_name:datacenter bordeaux"

sort ( tri des résultats )
Anchor
sort
sort

Le tri peut se faire:

  • sur n’importe quel critère de filtre,
  • par ordre ascendant ( asc ) ou descendant ( desc ).


Exemple triant la réponse par nom de "père" ( hôte ou cluster ) en ordre alphabétique descendant et par statut ascendant, soit dans le sens 0 => 3

Code Block
languagejs
themeEmacs
titleExemple de définition du paramètre sort
"sort=father_name:desc~status:asc"

output_format ( structure du retour )
Anchor
output_format
output_format

Ce paramètre permet d'indiquer où sont situés les checks dans la réponse de retour:

  • checks_attached_to_father : les checks sont accrochés à leurs hôtes / clusters ( forme d'arbre )
  • elements_on_same_level : les checks sont listés au niveau des hôtes / clusters ( une liste )

REMARQUE: Dans le cas où le filtre vaut uniquement type=check ( donc pas d'hôtes ou clusters )

  • Mais où output_format=checks_attached_to_father, les hôtes / clusters seront quand même présents pour les checks correspondant à ce filtre.
  • Si le output_format=elements_on_same_level, les hôtes et/ou clusters ne sont pas présents.

output_field ( Informations présentes dans le retour de la requête )
Anchor
outputField
outputField

Ce paramètre permet de lister les propriétés qui seront affichées sur le résultat en sortie.

Les propriétés présentes peuvent être les suivants :

Les propriétés utilisables pour les filtres

NomSortieValeurs possiblesExemple d’expression

status

1 valeur

0 pour OK1 pour ATTENTION2 pour CRITIQUE3 pour INCONNU 

0

context

1 valeur

NOTHING, ACKNOWLEDGED, ACKNOWLEDGED, PARTIAL-ACKNOWLEDGED, INHERITED-ACKNOWLEDGED, DOWNTIME, PARTIAL-DOWNTIME, INHERITED-DOWNTIME, FLAPPING, PARTIAL-FLAPPING, DISABLED

"FLAPPING"

is_status_confirmed

1 valeur

true / false

true

type

1 valeur

HOST, CLUSTER, CHECK_HOST, CHECK_CLUSTER

"check_host"

father_name

1 valeur


"bordeaux-storage"

check_name

1 valeur

"CPU Stats"

description

1 valeur

"Bordeaux"

address

1 valeur

"192.168.1.20"

realm

1 valeur


"Paris"

notification_contacts

valeurs séparées par des virgules

Noms des contacts

[ "user1", "user2" ]

notification_contact_groups

valeurs séparées par des virgules

Noms des groupes de contacts

[ "groupe1", "groupe2" ]

father_templates

valeurs séparées par des virgules

Noms des modèles d'hôtes ou de clusters

[ "linux", "http" ]

host_groups

valeurs séparées par des virgules

Noms des groupes d'hôtes

[ "ERP_bordeaux", "Aquitaine" ]

business_impact

1 valeur

0 pour *, 1 pour **, 2 pour ***, 3 pour $, 4 pour $$, 5 pour $$$

4

status_since

1 valeur

 epoch ( en secondes )

1606155095

 status_confirmed_since1 valeur  epoch ( en secondes ) (0 si état non confirmé)1606155095

last_check

1 valeur

 epoch ( en secondes )

1606991424

next_check

1 valeur

 epoch ( en secondes )

1606991444

thresholds_display

1 valeur


"Warning 70%\nCritique 90%"

Le reste des propriétés apparaissant dans le retour

NomSortieValeur possibleExemple d’expression

attempts

1 valeur

entier

2

max_attempts

1 valeur

entier

2

output

1 valeur

texte

"PING OK - Packet loss = 0%, RTA = 0.01 ms"

long_output

1 valeur

texte

"<div class=\"skn-ich\">Module info:</div><br/><div class=\"skn-tbl-57069\">Some DATA</div>"

perf_data

1 valeur

tableau JSON

[
 { "name": "rta", "min": 0, "max": null, "value": 0.013, "warning": 1000, "critical": 3000, "uom": "ms" },
 { "name": "pl", "min": 0, "max": 100, "value": 0, "warning": 100, "critical": 100, "uom": "%" }
]

raw_perf_data

1 valeur

texte

"rta=0.013000ms;1000.000000;3000.000000;0.000000 pl=0%;100;100;0"

notification_options

1 valeur

tableau JSON

[ "w", "u", "c", "r", "f" ]
 notes_url 1 valeur texte"http://localhost/" 
 notes_multi_url 1 valeur texte"UI_Configuration~=http://localhost:7766~=write~=NO~#~UI_Visualisation~=http://localhost:7767~=stats~=OPEN_IN_NEW_TAB"

notification_period

1 valeur

texte

"24x7"

Exemple d'utilisation


Code Block
languagejs
themeEmacs
titleExemple de définition du paramètre ouput_field
"ouput_field=status~context~father_name~check_name~output~perf_data~status_since~last_check"


Note : l'ordre dans lequel sont cités les propriétés ne change pas le format de sortie.

Exemple complet d'appel

Code Block
languagebash
themeEmacs
titleExemple par Appel curl
curl -s -S -H 'x-api-token: XYZ' -d 'filter0=check_name:CPU Stats' -d 'filter1=check_name:Disks' -d "sort=father_name:desc~status:asc" -d "output_format=elements_on_same_level" http://broker-server:50100/api/v2/inventory 
Code Block
-s, alias de --silent, ne pas afficher les barres de progression, n'affiche que les données récupérées
-S, alias de --show-error, afficher quand même les messages d'erreurs
-H, alias de --header, inclure ce header à la requête HTTP
-d, alias de --data, envoie les données spécifiées en requête POST au serveur HTTP