Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Scroll Ignore
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmltrue


Panel
titleSommaire

Table of Contents
stylenone



Objectifs

Info
titlePré-requis

Le module de type livedata

-

_module

-

_sla

-provider doit être activé sur le broker-module-livedata pour que la route /api/v1/sla/ soit accessible.

La configuration du module se trouve par défaut dans le fichier suivant : /etc/shinken/modules/livedata-module-sla-provider.cfg : Le livedata-module-sla-provider

_provider permet par le biais d'une URL ( Méthode POST de type READ

qui permet

) de recevoir la liste des données SLA de tous les éléments ( hôtes, clusters et checks ) :

  • Filtrées ( optionnel ),
  • Rangées,
    • En arbres ( hôtes/clusters → checks ),
    • Tous au même niveau,
    • Seulement les données SLA des éléments demandés.
  • En choisissant,
    • les informations présentes dans le retour de la requête ( optionnel ),
    • la période sur laquelle les données SLA seront récupérées ( optionnel ),
      • les données SLA sont calculées à la fin de la journée, donc la dernière donnée disponible est celle de la veilled'hier,
    • le nombre d'éléments par page ( optionnel ).
  • Les données SLA récupérées sont triées dans l'ordre chronologie ( du plus récent au plus vieux ).

Paramètres


Info
titlePré-requis

Le module de type livedata_module_sla_provider doit être activé sur le broker-module-livedata pour que la route /api/v1/sla/ soit accessible.

La configuration du module se trouve par défaut dans le fichier suivant : /etc/shinken/modules/livedata-module-sla-provider.cfg : Module livedata-module-sla-provider


Paramètres

Pour définir l'appel, 5 paramètres sont disponibles :

  • standards :
    • filterX
    • output_format
    • ouput_field
    • period
    • page_settings
filterX ( Filtres )


Nom et formatValeur par défautDescription et Syntaxe

filterX=expression~expression~...

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

AnchorfilterXfilterX

Les filtres ont pour formes :

filterX : expression~expression

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

    • type

    • father_name

    • father_uuid

    • father_templates

    • check_name

    • check_uuid

    • address

    • realm

    • host_groups

    • notification_contacts

    • notification_contact_groups

    • business_impact

    Vous pouvez trouver la description de ces filtres dans la page V1 - Les paramètres de l'API du module livedata-module-sla-provider du broker-module-livedata

    output_format ( Format de retour de la requête )

    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 )

    •  list_of_sla : Seul les données SLA sont listées ( une liste

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

    • Si le 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 ou  output_format = list_of_sla, les hôtes et clusters ne sont pas présents.

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

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

    • Les champs présents par défaut sont :
      • father_name
      • father_uuid
      • check_name
      • check_uuid
    • Les champs pouvant être ajoutés par l'utilisateur
      • type
    Info
    Les champs ci-dessus sont décrits dans la page V1 - Les paramètres de l'API du module livedata-module-sla-provider du broker-module-livedata
    • Les champs suivants sont propres à cette route et sont présent par défaut :

    Nom

    Format

    Description

    sla_total

    Secondes

    Temps total de SLA ( 86400 secondes étant 1 journée complète )

    sla_missing

    Secondes

    Temps en statut Données manquantes

    sla_ok

    Secondes

    Temps en statut OK

    sla_inactive

    Secondes

    Temps en statut Shinken Inactive

    sla_unknown

    Secondes

    Temps en statut Inconnu

    sla_crit

    Secondes

    Temps en statut Critique

    sla_warn

    Secondes

    Temps en statut Attention

    sla_thresholds

    Liste de pourcentages

    Deux pourcentages :

    • la première valeur est le seuil d'avertissement
    • la deuxième valeur est le seuil de critique

    Les pourcentages ont une précision à 3 chiffres ( ex: 90.001 )

    sla_date

    Chaîne de caractères

    au format jj_mm_aaaa ( ex: 12_05_2021 )

    period ( entre quelles dates de début et de fin, prendre les données SLA )

    Nom

    Valeur par défaut

    Description et syntaxe

    period=start:date~end:dateLa dernière heure

    Défini la période où collecter les données SLA

    • Les dates sont au format jj_mm_aaaa  ( ex: 12_05_2021 )
    • Si start n'est pas précisé, cela signifie que le début de la période est la date actuelle.
    • Si end n'est pas précisé, la fin de la période est maintenant.

    page_settings ( combien d’éléments par page et quelle page retourner )

    L'API peut, grâce à ce paramètre, définir le nombre d'éléments par page et le numéro de la page retournée, ce qui permet de contrôler le volume d'échange de données. Ceci est possible vu que les données SLA sont figées en base de données.

    Le champ has_next_page dans la partie pagination du retour permet de savoir s’il y a une page suivante. 

    NomValeur par défautInfo

    page_settings=page:page_index~nb_element:size

    Le nombre d'éléments par défaut d'une page est 100

    • nb_element étant la taille de la page 
    • page étant l'index de page demandée. Les indexes de page commencent à 0
    Info

    Si le check_in_tree est à True, le nombre d'éléments par page correspondra aux hôtes / clusters.

    Si le check_in_tree est à False, le nombre d'éléments par page correspondra aux hôtes / clusters / checks.

    output_format=format_de_sortie_choisi

    Les éléments ( Hôtes, Clusters et Checks ) sont au même niveau ( elements_on_same_level )

    3 valeurs disponibles :

    • checks_attached_to_father
    • elements_on_same_level
    • list_of_sla

    output_field=champs1~champ2~...

    Spécifique à chaque output_format

    • ~ ayant le sens de "et" 
    • champ étant un des champs disponible en sortie de la requête

    period=start:start_date~end:end_date

    Aucune période définie => Les données SLA de la veille sont retournées

    Les données SLA sont calculées à la fin de la journée, donc la dernière donnée disponible est celle d'hier

    • ~ ayant le sens de "et" 
    • date au format DD_MM_YYYY

    page_settings=page:page_number~size:page_size

    Aucune valeur précisée => tous les éléments sont retournés
    • ~ ayant le sens de "et" 
    • la première page débute à l'index 0



    filterX ( Filtres )
    Anchor
    filterX
    filterX

    Les filtres ont pour formes :

    • filterXexpression~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

    type

    correspond exactement

    Tableau

    HOST, CLUSTER, CHECK, CHECK_HOST, CHECK_CLUSTER

    CHECK^^HOST

    father_name

    contient ( insensible à la casse )

    Tableau

    father_name est le critère contenant le filtre pour le nom des hôtes et 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_uuidcorrespond exactement TableauUUID des hôtes / clusters4a893fbbcb0047b8a1922bce91e3dfdg

    check_name

    contient ( 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_uuidcorrespond exactement TableauUUID des checks4a893fbbcb0047b8a1922bce91e3decf

    address

    contient ( insensible à la casse )

    Chaîne


    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


    Exemple filtrant les hôtes et les clusters ayant pour royaume ( realm ) Paris ou Bordeaux et comme impact métier ( business_impact ) 5 

    Code Block
    languagejs
    themeEmacs
    "filter0=type:cluster^^host~realm:Paris^^Bordeaux~business_impact:5"



    output_format ( Format de retour de la requête 
    Anchor
    outputFormat
    outputFormat

    Ce paramètre permet de définir quelle format de retour est utilisé ( Il en existe 3 ):

    • 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 )

    •  list_of_sla : Seul les données SLA sont listées ( une liste

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

    • Si le 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 ou  output_format = list_of_sla, les hôtes et clusters ne sont pas présents.


    Info

    Par défaut, la valeur est "elements_on_same_level"



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

    Ce paramètre permet de lister les champs qui seront affichés dans le résultat.

    • Les champs présents par défaut sont :
    Nom
    FormatDescription

    father_name

    1 valeur


    "bordeaux-storage"

     father_uuid1 valeur
      "4a893fbbcb0047b8a1922bce91e3dfdg"

    check_name

    1 valeur

    "CPU Stats"

     check_uuid1 valeur
      "4a893fbbcb0047b8a1922bce91e3decf"

    sla_total


    Secondes

    Temps total de SLA ( 86400 secondes étant 1 journée complète )

    sla_missing


    Secondes

    Temps en statut Données manquantes

    sla_ok


    Secondes

    Temps en statut OK

    sla_inactive


    Secondes

    Temps en statut Shinken Inactive

    sla_unknown


    Secondes

    Temps en statut Inconnu

    sla_crit


    Secondes

    Temps en statut Critique

    sla_warn


    Secondes

    Temps en statut Attention

    sla_thresholds


    Liste de pourcentages

    Deux pourcentages :

    • la première valeur est le seuil d'avertissement
    • la deuxième valeur est le seuil de critique

    Les pourcentages ont une précision à 3 chiffres ( ex: 90.001 )

    sla_date


    Chaîne de caractères

    au format aaaa_mm_jj ( ex: 2021_05_12 )






    • Les champs présents peuvent être les suivants :
    Nom
    Valeur possibleExemple d’expression

    type

    1 valeur

    HOST, CLUSTER, CHECK_HOST, CHECK_CLUSTER

    "check_host"


    Info

    Le champ type fait partie des champs présents par défaut pour les formats de retour "elements_on_same_level" et "list_of_sla".


    Exemple de définition du paramètre ouput_field :

    Code Block
    languagejs
    themeEmacs
    "output_field=type"


    Info

    L'ordre dans lequel sont cités les champs ne change pas le format de sortie.



    period ( entre quelles dates de début et de fin, prendre les données SLA ) 
    Anchor
    period
    period


    Nom

    Valeur par défaut

    Description et syntaxe

    period=start:date~end:dateLa date de la veille

    Défini la période où collecter les données SLA

    • Les dates sont au format aaaa_mm_jj  ( ex: 2021_05_12 )
    • Si start n'est pas précisé, cela signifie que le début de la période est la date de la veille.
    • Si end n'est pas précisé, la fin de la période est égal à la date de début.


    Trois règles devront être respectées : 

    • La date de départ ne peut pas être antérieur à la date de la première donnée SLA disponible.
    • La date de départ ne peut pas être supérieur à la date de la veille.
    • La date de fin ne peut pas être supérieur à la date de début.



    page_settings ( combien d’éléments par page et quelle page retourner ) 
    Anchor
    pageSettings
    pageSettings

    L'API peut, grâce à ce paramètre, définir le nombre d'éléments par page et le numéro de la page retournée, ce qui permet de contrôler le volume d'échange de données. Ceci est possible vu que les données SLA sont figées en base de données.

    Le champ has_next_page dans la partie pagination du retour permet de savoir s’il y a une page suivante. 


    NomValeur par défautInfo

    page_settings=page:page_index~nb_element:size

    Le nombre d'éléments par défaut d'une page est 100

    • nb_element étant la taille de la page 
    • page étant l'index de page demandée. Les indexes de page commencent à 0


    Info

    Si output_format est à checks_attached_to_father , le nombre d'éléments par page correspondra aux hôtes / clusters.

    Si output_format est à elements_on_same_level , le nombre d'éléments par page correspondra aux hôtes / clusters / checks.

    Si output_format est à list_of_sla, le nombre d'éléments par page correspondra aux données SLA des hôtes / clusters / checks.


    Exemple

    Exemple permettant d'obtenir la première page d'une requête renvoyant 100 éléments avec leurs données SLA, du début de l'année 2021 au 1er mai 2021.

    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
     -d "period=start:2021_01_01~end:2021_05_01" \
     -d "page_settings=page:0~nb_element:100" \
    http://broker-module-livedata:50100/api/v1/sla
    


    Exemple permettant d'obtenir la quatrième page d'une requête renvoyant 100 éléments avec leurs données SLA, du début de l'année 2021 au 1er mai 2021.

    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
     -d "period=start:2021_01_01~end:2021_05_01" \
     -d "page_settings=page:4~nb_element:100" \
    http://broker-module-livedata:50100/api/v1/sla



    Exemple complet d'appel

    Exemple par Appel curl

    Exemple

    Exemple permettant d'obtenir la première page d'une requête renvoyant 100 éléments avec leurs données SLA, du début de l'année 2021 au 1er mai 2021.

    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
     -d "period=start:01_01_2021:~end:01_05_2021" \
     -d "page_settings=page:0~nb_element:100" \
    http://broker-module-livedata:50100/api/v1/sla
    

    Exemple permettant d'obtenir la quatrième page d'une requête renvoyant 100 éléments avec leurs données SLA, du début de l'année 2021 au 1er mai 2021.

    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
     -d "period=start:01_01_2021~end:01_05_2021" \
     -d "page_settings=page:4~nb_element:100" \
    http://broker-module-livedata:50100/api/v1/sla

    Réponse

    Codes de retour

    Codes de retourExplications200

    OK

    400

    Paramètre invalide

    401

    Accès nécessite une authentification ou un Token valide.

    403

    Authentification de l'utilisateur OK, mais droits non suffisants.

    500

    L'appel est valide, mais un problème d'exécution est survenu.

    Retour du code 200

    En premier apparaîtra des informations donnant le nombre d'éléments : 

    • request_statistics
      • nb_elements_total
      • nb_hosts_total
      • nb_clusters_total
      • nb_checks_total
      • nb_elements_filtered
      • nb_hosts_filtered
      • nb_clusters_filtered
      • nb_checks_filtered
      • nb_elements_in_page
      • nb_hosts_in_page
      • nb_clusters_in_page
      • nb_checks_in_page

    Avec une information supplémentaire propre à la route :

    NomFormatDescriptionnb_sla_in_pageEntierNombre de données SLA présentes dans la page

    En deuxième, les données de pagination vont être retournées dans le format suivant :

    • pagination
      • has_next_page
      • nb_total_page
      • page
      • page_size

    Les champs présents pour chaque élément retourné possédant des données SLA doivent être choisis avec l'option output_field, mais les champs suivants sont au minimum automatiquement retournés :

    Output_format à checks_attached_to_father :

    • elements_found
      • hosts
        • father_name
        • father_uuid
        • checks
          • check_name
          • check_uuid
          • sla
            • sla_total
            • sla_missing
            • sla_ok
            • sla_inactive
            • sla_unknown
            • sla_crit
            • sla_warn
            • sla_thresholds
            • sla_date
      • clusters
        • father_name
        • father_uuid
        • checks
          • check_name
          • check_uuid
          • sla
            • sla_total
            • sla_missing
            • sla_ok
            • sla_inactive
            • sla_unknown
            • sla_crit
            • sla_warn
            • sla_thresholds
            • sla_date
    • elements_not_found

    Output_format à elements_on_same_level :

    • elements_found
      • type
      • father_name
      • father_uuid
      • check_name
      • check_uuid
      • sla
        • sla_total
        • sla_missing
        • sla_ok
        • sla_inactive
        • sla_unknown
        • sla_crit
        • sla_warn
        • sla_thresholds
        • sla_date
    • elements_not_found

    Output_format à list_of_sla :

    • elements_found
      • type
      • father_name
      • father_uuid
      • check_name
      • check_uuid
      • sla_total
      • sla_missing
      • sla_ok
      • sla_inactive
      • sla_unknown
      • sla_crit
      • sla_warn
      • sla_thresholds
      • sla_date
    • elements_not_found

    Voir la page V1 - Les champs présents dans le retour 200 des API du broker-module-livedata, pour la description complète de tous les champs pouvant être renvoyés. Pour les éléments non trouvés, les critères utilisés dans les filtres seront renvoyés dans la description des l'élément.

    Exemple 1 : output_format=checks_attached_to_father

    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
     -d "periodfilter0=start:24_05_2021~end:25_05_2021check_name:CPU Stats" \
     -d "filter1=check_name:Disks" \ 
     -d "output_format=checks_attached_to_father" \
     -d "output_field=type" \
     -d "filter01=type:checkperiod=start:2021_05_01~end:2021_05_25" \
     -d "page_settings=page:0~size4~nb_element:210" \ 
    http://broker-module-livedataserver:50100/api/v1/sla


    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  



    Réponse

    Codes de retour


    Codes de retourExplications
    200

    OK

    400

    Paramètre invalide

    401

    Accès nécessite une authentification ou un Token valide.

    403

    Authentification de l'utilisateur OK, mais droits non suffisants.

    500

    L'appel est valide, mais un problème d'exécution est survenu.



    Retour du code 200

    Données statistiques

    En premier apparaîtra des informations donnant le nombre d'éléments : 

    Compteurs obtenus avant d'effectuer la requête


    NomTypeDescription
    nb_elements_total Entier 

    Nombre d'éléments supervisés visibles par l'utilisateur

    nb_hosts_total Entier 

    Nombre total d'hôtes visibles par l'utilisateur

    nb_clusters_total Entier 

    Nombre total de clusters visibles par l'utilisateur

    nb_checks_total Entier 

    Nombre total de checks visibles par l'utilisateur


    Compteurs obtenus après le filtrage des éléments


    NomTypeDescription
    nb_elements_filtered Entier 

    Nombre d'éléments supervisés obtenus après application des filtres reçus en paramètres

    nb_hosts_filtered Entier 

    Nombre d'hôtes obtenus après application des filtres reçus en paramètres

    nb_clusters_filtered Entier 

    Nombre de clusters obtenus après application des filtres reçus en paramètres

    nb_checks_filtered Entier 

    Nombre de checks obtenus après application des filtres reçus en paramètres


    Compteurs liés à des filtres ne donnant pas le résultat attendu


    NomTypeDescription
    nb_elements_not_foundEntier 

    Nombre d'éléments dont un filtre explicite (voir ci-dessous) ne donne pas le retour attendu

    nb_father_not_foundEntier 

    Nombre d'hôtes et de clusters pour lesquels un filtre father_name  ou father_uuid ne donne pas d'élément en résultat

    nb_checks_not_foundEntier 

    Nombre de checks pour lesquels un des filtres

    • check_uuid 
    • father_name  et check_name 
    • father_uuid  et check_name 

    ne donne pas d'élément en résultat


    Compteurs liés au nombre d'éléments présent dans la page


    NomTypeDescription
    nb_elements_in_pageEntier 

    Nombre d'éléments présent dans la page

    nb_host_in_pageEntier 

    Nombre d'hôtes présent dans la page

    nb_cluster_in_pageEntier 

    Nombre de clusters présent dans la page

    nb_check_in_pageEntier 

    Nombre de checks présent dans la page

    nb_sla_in_pageEntier 

    Nombre de données SLA présent dans la page



    Données de pagination

    En deuxième, les données de pagination vont être retournées dans le format suivant :


    NomTypeDescription

    has_next_page

    Booléen

    Indication sur l'existence d'une page suivante

    nb_total_page

    Entier 

    Nombre total de pages

    page

    Entier 

    Numéro de la page

    page_size

    Entier 

    Nombre d'éléments dans la page



    Données propres aux éléments


    NomTypeDescription

    type

    Chaîne de charactère

    Type de l'élément ( hostcluster, check_host, check_cluster )

    father_name

    Chaîne de charactère

    Nom de l'hôte / cluster 

    father_uuid

    Chaîne de charactère

    UUID de l'hôte

    check_name

    Chaîne de charactère

    Nom du check

    check_uuid

    Chaîne de charactère

    UUID du check





    Format de retour de la requête

    Les champs présents pour chaque élément retourné possédant des données SLA doivent être choisis avec l'option output_field, mais les champs suivants sont au minimum automatiquement retourné :

    Output_format à checks_attached_to_father :

    • elements_found
      • hosts
        • father_name
        • father_uuid
        • checks
          • check_name
          • check_uuid
          • sla
            • sla_total
            • sla_missing
            • sla_ok
            • sla_inactive
            • sla_unknown
            • sla_crit
            • sla_warn
            • sla_thresholds
            • sla_date
      • clusters
        • father_name
        • father_uuid
        • checks
          • check_name
          • check_uuid
          • sla
            • sla_total
            • sla_missing
            • sla_ok
            • sla_inactive
            • sla_unknown
            • sla_crit
            • sla_warn
            • sla_thresholds
            • sla_date
    • elements_not_found



    Output_format à elements_on_same_level :

    • elements_found
      • type
      • father_name
      • father_uuid
      • check_name
      • check_uuid
      • sla
        • sla_total
        • sla_missing
        • sla_ok
        • sla_inactive
        • sla_unknown
        • sla_crit
        • sla_warn
        • sla_thresholds
        • sla_date
    • elements_not_found



    Output_format à list_of_sla :

    • elements_found
      • type
      • father_name
      • father_uuid
      • check_name
      • check_uuid
      • sla_total
      • sla_missing
      • sla_ok
      • sla_inactive
      • sla_unknown
      • sla_crit
      • sla_warn
      • sla_thresholds
      • sla_date
    • elements_not_found



    Exemple 1 : output_format=checks_attached_to_father


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
     -d "period=start:2021_05_24~end:2021_05_25" \
     -d "output_format=checks_attached_to_father" \ 
     -d "filter01=type:check" \
     -d "page_settings=page:0~size:2" \
    http://broker-module-livedata:50100/api/v1/sla




    Code Block
    {
        "request_statistics": {
            "nb_elements_total": 34,
            "nb_hosts_total": 3,
            "nb_clusters_total": 1,
            "nb_checks_total": 30,
            "nb_elements_filtered": 4,
            "nb_hosts_filtered": 1,
            "nb_clusters_filtered": 1,
            "nb_checks_filtered": 2,
            "nb_elements_in_page": 4,
            "nb_hosts_in_page": 1,
            "nb_clusters_in_page": 1,
            "nb_checks_in_page": 2,
            "nb_sla_in_page": 4
        },
        "pagination": {
            "has_next_page": true,
            "nb_total_page": 2,
            "page": 0,
            "page_size": 2
        },
        "elements_found": {
            "clusters": [{
                    "father_uuid": "12760f56bc6d11eb85a3080027c44e8f",
                    "father_name": "Cluster 01",
                    "checks": [{
                            "check_name": "Check Cluster 01",
                            "check_uuid": "12760f56bc6d11eb85a3080027c44e8f-9d86c522bd3511ebb58c080027c44e8f",
                            "sla": [{
                                    "sla_date": "2021_05_24",
                                    "sla_total": 86400,
                                    "sla_warn": 0,
                                    "sla_unknown": 0,
                                    "sla_thresholds": [99.0, 97.0],
                                    "sla_missing": 0,
                                    "sla_ok": 0,
                             "request_statistics": {
            "nb_elements_total": 34,
            "nb_hosts_total": 3,
            "nb_clusters_total": 1,
            "nb_checks_total": 30,
            "nb_elements_filtered": 4,
            "nb_hosts_filtered": 1,
            "nbsla_clusters_filteredinactive": 186400,
                  "nb_checks_filtered": 2,
            "nb_elements_in_page": 4,
            "nb_hosts_in_pagesla_crit": 1,0
            "nb_clusters_in_page": 1,
            "nb_checks_in_page": 2,
            "nb_sla_in_page": 4
        }, {
        "pagination": {
              "has_next_page": true,
            "nb_total_page": 2,
            "pagesla_date": 0"2021_05_25",
                  "page_size": 2
        },
        "elements_found": {
            "clusterssla_total": [{47616,
                    "father_uuid": "12760f56bc6d11eb85a3080027c44e8f",
                    "fathersla_namewarn": "Cluster 01"0,
                    "checks": [{
                       "sla_unknown": 0,
         "check_name": "Check Cluster 01",
                            "checksla_uuidthresholds": "12760f56bc6d11eb85a3080027c44e8f-9d86c522bd3511ebb58c080027c44e8f",
    [99.0, 97.0],
                                    "sla_missing": [{0,
                                    "sla_dateok": "24_05_2021"0,
                                    "sla_totalinactive": 8640047616,
                                    "sla_warn": 0,
    crit": 0
                                }
                         "sla_unknown": 0,
      ]
                        }
              "sla_thresholds": [99.0, 97.0],
        ]
                }
            ],
            "sla_missinghosts": 0,[{
                    "father_uuid": "f87c2e56b94b11ebaf7e080027c44e8f",
                    "slafather_okname": "Host 001",
                    "checks": [{
                    "sla_inactive": 86400,
            "check_name": "Check 01",
                            "slacheck_crituuid": 0"f87c2e56b94b11ebaf7e080027c44e8f-fdd0c038b94b11ebb21f080027c44e8f",
                                }, "sla": [{
                                    "sla_date": "252021_05_202124",
                                    "sla_total": 4761686400,
                                    "sla_warn": 0,
                                    "sla_unknown": 0,
                                    "sla_thresholds": [99.0, 97.0],
                                    "sla_missing": 0,
                                    "sla_ok": 0,
                                    "sla_inactive": 4761686400,
                                    "sla_crit": 0
                                }, {
                            ]         "sla_date": "2021_05_25",
                        }
                "sla_total": 86400,
        ]
                }
            ],
            "hostssla_warn": [{0,
                    "father_uuid": "f87c2e56b94b11ebaf7e080027c44e8f",
                    "fathersla_nameunknown": "Host 01"0,
                    "checks": [{
                   "sla_thresholds": [99.0, 97.0],
           "check_name": "Check 01",
                            "checksla_uuidmissing": "f87c2e56b94b11ebaf7e080027c44e8f-fdd0c038b94b11ebb21f080027c44e8f"0,
                                    "sla_ok": [{0,
                                    "sla_dateinactive": "24_05_2021"86400,
                                    "sla_total": 86400,
                 "sla_crit": 0
                      "sla_warn": 0,
             }
                           "sla_unknown": 0, ]
                        }
                  "sla_thresholds": [99.0, 97.0],
                }
            ]
        }
    }



    Exemple 2 : output_format=elements_on_same_level


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:2021_05_24~end:2021_05_25" \
    -d "output_format=elements_on_same_level" \
    -d "filter01=type:check" \
    -d "page_settings=page:0~size:2" \
    http://broker-module-livedata:50100/api/v1/sla



    Code Block
    {
        "request_statistics": {
     "sla_missing": 0,
                           "nb_elements_total": 34,
            "slanb_hosts_oktotal": 03,
            "nb_clusters_total": 1,
            "nb_checks_total": 30,
            "nb_elements_filtered": 30,
            "slanb_hosts_inactivefiltered": 864000,
            "nb_clusters_filtered": 0,
            "nb_checks_filtered": 30,
            "nb_elements_in_page": 2,
            "sla_critnb_hosts_in_page": 0,
            "nb_clusters_in_page": 0,
            "nb_checks_in_page": 2,
              }, {"nb_sla_in_page": 4
        },
        "pagination": {
                 "has_next_page": true,
              "slanb_total_datepage": "25_05_2021"15,
                  "page": 0,
            "page_size": 2
        },
        "slaelements_totalfound": 86400,[{
                "check_name": "Check Cluster 01",
                    "type": "slacheck_warncluster": 0,
                        "father_uuid": "12760f56bc6d11eb85a3080027c44e8f",
                "slafather_unknownname": "Cluster 001",
                        "check_uuid": "12760f56bc6d11eb85a3080027c44e8f-9d86c522bd3511ebb58c080027c44e8f",
                "sla_thresholds": [99.0, 97.0],{
                        "sla_date": "2021_05_24",
               "sla_missing": 0,
                "sla_total": 86400,
                        "sla_okwarn": 0,
                        "sla_unknown": 0,
               "sla_inactive": 86400,
            "sla_thresholds": [99.0, 97.0],
                          "sla_critmissing": 0
          ,
                          }"sla_ok": 0,
                        "sla_inactive": 86400,
       ]
                     "sla_crit": 0
      }
                  },  ]{
                }
            ]
        }
    }

    Exemple 2 : output_format=elements_on_same_level

    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:24_05_2021~end:25_05_2021" \
    -d "output_format=elements_on_same_level" \
    -d "filter01=type:check" \
    -d "page_settings=page:0~size:2" \
    http://broker-module-livedata:50100/api/v1/sla
    Code Block
    {
        "request_statistics": {
    "sla_date": "2021_05_25",
                        "nb_elementssla_total": 3451527,
            "nb_hosts_total": 3,
                "nbsla_clusters_totalwarn": 10,
               "nb_checks_total": 30,
            "nbsla_elements_filteredunknown": 3024183,
               "nb_hosts_filtered": 0,
            "nbsla_clusters_filteredthresholds": [99.0, 97.0],
              "nb_checks_filtered": 30,
              "nb_elements_in_pagesla_missing": 23916,
            "nb_hosts_in_page": 0,
                "nb_clusters_in_pagesla_ok": 0,
               "nb_checks_in_page": 2,
            "nb_sla_in_pageinactive": 423428,
           },
        "pagination": {
            "hassla_next_pagecrit": true,0
            "nb_total_page": 15,
            }
      "page": 0,
            "page_size": 2 ]
        },
        "elements_found": [}, {
                "check_name": "Check Cluster 01",
                "type": "check_clusterhost",
                "father_uuid": "12760f56bc6d11eb85a3080027c44e8ff87c2e56b94b11ebaf7e080027c44e8f",
                "father_name": "ClusterHost 01",
                "check_uuid": "12760f56bc6d11eb85a3080027c44e8ff87c2e56b94b11ebaf7e080027c44e8f-9d86c522bd3511ebb58c080027c44e8ffdd0c038b94b11ebb21f080027c44e8f",
                "sla": [{
                        "sla_date": "242021_05_202124",
                        "sla_total": 86400,
                        "sla_warn": 0,
                        "sla_unknown": 0,
                        "sla_thresholds": [99.0, 97.0],
                        "sla_missing": 0165,
                        "sla_ok": 027344,
                        "sla_inactive": 8640058891,
                        "sla_crit": 0
                    }, {
                        "sla_date": "252021_05_202125",
                        "sla_total": 5152786400,
                        "sla_warn": 0,
                        "sla_unknown": 241830,
                        "sla_thresholds": [9958.0654, 9732.0451],
                        "sla_missing": 3916245,
                        "sla_ok": 027881,
                        "sla_inactive": 2342858274,
                        "sla_crit": 0
                    }
                ]
            }
        ]
    }  



    Exemple 3 : output_format=list_of_sla


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:2021_05_241~end:2021_05_25" \
    -d "output_format=list_of_sla" \
    -d "filter01=type:check" \
    -d "page_settings=page:0~size:2" \
    http://broker-module-livedata:50100/api/v1/sla



    Code Block
    {
        "request_statistics": { ]
            }, {
                "check_name": "Check 01",
                "type": "check_host",
                "father_uuid": "f87c2e56b94b11ebaf7e080027c44e8f",
       "nb_elements_total": 34,
             "fathernb_hosts_nametotal": "Host 01"3,
                "check_uuid"nb_clusters_total": "f87c2e56b94b11ebaf7e080027c44e8f-fdd0c038b94b11ebb21f080027c44e8f",
        1,
            "slanb_checks_total": [{30,
                "nb_elements_filtered": 30,
            "slanb_hosts_datefiltered": "24_05_2021"0,
               "nb_clusters_filtered": 0,
             "slanb_checks_totalfiltered": 8640030,
                "nb_elements_in_page": 1,
            "sla_warnnb_hosts_in_page": 0,
                        "sla_unknown"nb_clusters_in_page": 0,
                "nb_checks_in_page": 1,
            "nb_sla_in_thresholdspage": [99.0, 97.0],2
        },
            "pagination": {
            "slahas_next_missingpage": 165"true",
                        "sla_ok"nb_total_page": 2734430,
                "page": 0,
            "slapage_inactivesize": 58891,2
        },
        "elements_found": [{
                "sla_crittotal": 086400,
                "sla_thresholds":    }, {[99.0, 97.0],
                        "sla_date"check_name": "25_05_2021Check Cluster 01",
                        "sla_total"check_uuid": 86400"12760f56bc6d11eb85a3080027c44e8f-9d86c522bd3511ebb58c080027c44e8f",
                        "sla_warn"father_uuid": 0,
            "12760f56bc6d11eb85a3080027c44e8f",
                "sla_unknownok": 0,
                        "sla_thresholdsinactive": [58.654, 32.451]86400,
                        "sla_missingwarn": 2450,
                        "sla_okdate": 27881"2021_05_24",
                "father_name": "Cluster 01",
                "sla_inactiveunknown": 582740,
                        "sla_critmissing": 0,
                    }"type": "check_cluster",
                ]"sla_crit": 0
            }, {
        ]
    }  

    Exemple 3 : output_format=list_of_sla

    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:24_05_2021~end:25_05_2021" \
    -d "output_format=list_of_sla" \
    -d "filter01=type:check" \
    -d "page_settings=page:0~size:2" \
    http://broker-module-livedata:50100/api/v1/sla
    Code Block
    {
    sla_total": 51527,
                "sla_thresholds": [99.0, 97.0],
                "requestcheck_statisticsname": {
    "Check Cluster 01",
                 "type": "nbcheck_elements_total": 34cluster",
                "nbfather_hosts_totaluuid": 3"12760f56bc6d11eb85a3080027c44e8f",
                "nbsla_clusters_totalok": 10,
                "nbsla_checks_totalinactive": 3023428,
                "nbsla_elements_filteredcrit": 300,
                "nbsla_hosts_filtereddate": 0"2021_05_25",
                "nbfather_clusters_filteredname": 0"Cluster 01",
                "nb_checkssla_filteredunknown": 3024183,
                "nb_elements_in_pagesla_missing": 13916,
                "nb_hosts_in_pagecheck_uuid": 0"12760f56bc6d11eb85a3080027c44e8f-9d86c522bd3511ebb58c080027c44e8f",
                "nb_clusters_in_pagesla_warn": 0,
             "nb_checks_in_page": 1,
            "nb_sla_in_page": 2
        },
        "pagination": {
            "has_next_page": "true",
            "nb_total_page": 30,
            "page": 0,
            "page_size": 2
        },
        "elements_found": [{
                "sla_total": 86400,
                "sla_thresholds": [99.0, 97.0],
                "check_name": "Check Cluster 01",
                "check_uuid": "12760f56bc6d11eb85a3080027c44e8f-9d86c522bd3511ebb58c080027c44e8f",
                "father_uuid": "12760f56bc6d11eb85a3080027c44e8f",
                "sla_ok": 0,
                "sla_inactive": 86400,
                "sla_warn": 0,
                "sla_date": "24_05_2021",
                "father_name": "Cluster 01",
                "sla_unknown": 0,
                "sla_missing": 0,
                "type": "check_cluster",
                "sla_crit": 0
            }, {
                "sla_total": 51527,
                "sla_thresholds": [99.0, 97.0],
                "check_name": "Check Cluster 01",
                "type": "check_cluster",
                "father_uuid": "12760f56bc6d11eb85a3080027c44e8f",
                "sla_ok": 0,
                "sla_inactive": 23428,
                "sla_crit": 0,
                "sla_date": "25_05_2021",
                "father_name": "Cluster 01",
                "sla_unknown": 24183,
                "sla_missing": 3916,
                "check_uuid": "12760f56bc6d11eb85a3080027c44e8f-9d86c522bd3511ebb58c080027c44e8f",
                "sla_warn": 0
            }
        ]
    }  }
        ]
    }  



    Retour du code 400

    Paramètres POST incorrects

    Paramètre inconnu


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "parametre_inconnu=is_status_:true" \ 
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: POST parameter [ parametre_inconnu ] is unknown


    Messages d'erreurs des filtres ( filterX )

    Filtre inexistant


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "filter01=is_status_:true" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: filtering[0]: invalid field name [is_status_]


    Filtre incomplet


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "filter0=next_check" \ 
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: filtering[0]: missing value for field [ next_check ]


    Filtre existant, mais non autorisé 


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "filter01=is_status_confirmed:true" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: filtering[0]: field name [is_status_confirmed] not allowed in this route


    Valeur incorrecte pour ce type de filtre


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "filter0=business_impact:cinq" \ 
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: filtering[0]: field [ business_impact ] => wrong value [u'cinq']


    Messages d'erreurs du format de retour de la requête ( output_format )

    Valeur invalide


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \ 
    -d "output_format=all_elements" \ 
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: output_format: invalid value [ all_elements]


    Messages d'erreurs des champs présents dans la sortie ( output_field )

    Champ de sortie existant, mais non autorisé


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "output_field=is_status_confirmed" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: output_field: field name [is_status_confirmed] not allowed in this route


    Champ de sortie inexistant


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "output_field=is_status_" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: output_field: invalid field name [is_status_]


    Messages d'erreurs de la période sur laquelle récupérer les données SLA ( period )

    Date de début inférieure à la date de la plus ancienne donnée SLA enregistrée dans la base MongoDB


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:2021_01_01~end:2021_05_25" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: period: the start period is not valid, as there is no SLA data for this date. You can filter elements from 2021_02_13.


    Date de fin supérieur à la date de la veille


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:2021_01_01~end:2021_05_26" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: period: the end period is invalid, as the requested period is in the future. You can filter elements until 2021_05_25.


    Date de fin inférieur à la date de début saisie


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:2021_05_25~end:2021_05_24" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: period: the end period is invalid, as it's less than the start period.


    Date de début est au mauvais format


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:01_05_2021~end:2021_05_01" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: period: start period wrong format. Expecting ISO format YYYY_MM_DD.


    Date de fin est au mauvais format


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \
    -d "period=start:2021_05_01~end:25_05_2021" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: period: end period wrong format. Expecting ISO format YYYY_MM_DD.


    Messages d'erreurs de la pagination ( page_settings )

    Mauvaise valeur pour le paramètre page


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \ 
    -d "page_settings=page:cinq~size:2" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: Wrong value:[ cinq ] for page number parameter


    Mauvaise valeur pour le paramètre size


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \ 
    -d "page_settings=page:5~size:deux" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: Wrong value:[ deux ] for page size parameter


    Pas de valeur pour le paramètre size


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \ 
    -d "page_settings=page:5~size" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: Missing page size parameter


    Paramètre size manquant


    Code Block
    languagebash
    themeEmacs
    curl -s -S -H "x-api-token: XYZ" \ 
    -d "page_settings=page:5" \
    http://broker-module-livedata:50100/api/v1/sla



    Panel
    borderColor#dfe1e5
    borderWidth1
    borderStylesolid

    ERROR 400: Wrong format for pagination parameters, expected:[name:integer~name:integer], got:[ page:2 ]