Concept
Lorsque le pop-up d'édition est affiché, les erreurs apparaissent au-dessus du formulaire d'édition.
En cliquant sur l'icône à la fin d'un message d'erreur, cela amène au bloc de configuration qui correspond à l'erreur.
Validation du JSON
Format invalide
Le JSON est un format qui suit des règles très strictes ( regarder page de Affichage et comportement du formulaire - Édition JSON - Météo ).
Une virgule oubliée comme dans l'exemple ci-dessous, le JSON deviendra invalide et ne pourra pas être compris ( même partiellement ), il faudra donc le corriger pour le rendre "lisible" par Shinken.
On ne peut pas dire quelle est l'erreur exacte qui rend le format invalide, on peut juste donner la ligne à partir duquel le JSON devient invalide. La correction sera "surement" à faire sur cette ligne ou sur la ligne précédente.
Dans l'exemple ci-contre, il y a virgule en trop à la fin de la ligne 15.
Il est aussi possible que d'autres erreurs existent dans des lignes qui suivent.
Seule la première erreur sera affichée jusqu'à la prochaine vérification ( limitation technique ).
Validation de la grille
Erreurs
Mauvaise configuration de la grille
Paramètre de type de grille
Le paramètre type doit toujours être égal à "grid" ( à ne pas modifier )
La valeur [ grisd ] pour la clé [ type ] est inconnue. Les valeurs possibles sont [ grid ]
Paramètres nécessitant un entier positif ou une valeur positive
Pour les paramètres suivants :
- nb_tiles_in_width,
- nb_tiles_in_height,
- separation_grid_element_min,
- separation_grid_element_percent.
Si la valeur saisie n'est pas un entier positif ou valeur positive, la sauvegarde ne s'effectuera pas et suivant
nb_tiles_in_width doit être un entier compris entre 1 et 300 ou [ default ] : [ -60 ]
nb_tiles_in_height doit être un entier compris entre 1 et 1000 ou [ default ] : [ -50 ]
separation_grid_element_min doit être un entier positif ou [ default ] : [ -10 ]
separation_grid_element_max doit être un entier positif ou [ unlimited, default ] : [ -20 ]
separation_grid_element_percent doit être compris entre 0 et 100 ou [ default ] : [ -2 ]
Paramètre nécessitant un entier positif ou une valeur définie
Pour le paramètre separation_grid_element_max, si la valeur saisie n'est pas un entier positif ou unlimited, la sauvegarde ne s'effectuera pas et suivant
separation_grid_element_max doit être un entier positif ou [ unlimited, default ] : [ -20 ]
Paramètre "separation_grid_element_min" supérieur au paramètre "separation_grid_element_max"
Si le paramètre separation_grid_element_min est supérieur au paramètre separation_grid_element_max, la sauvegarde ne s'effectuera pas et suivant
La valeur de la clé [ separation_grid_element_min ] ne peut être supérieur à la valeur de la clé [ separation_grid_element_max ]
Widget en dehors de la grille
Après le calcul des positions X et Y des widgets, si certains sont en dehors de la grille ( X ou Y non compris entre 0 et tiles_max_X et tiles_max_Y ), la sauvegarde ne s'effectuera pas et suivant
Le widget est hors de la grille
Widgets qui se chevauchent
Après le calcul des positions X et Y des widgets, si certaines se chevauchent, la sauvegarde ne s'effectuera pas et suivant
Chevauchement de widgets détectés entre les widgets [ 3 ] et [ 4 ]
Validation des Widgets
Erreurs communes aux widgets
Valeur invalide dans les paramètres de positionnement des Widgets
Si la valeur des paramètres position_x et position_y n'est pas un entier positif ( zéro compris ), la sauvegarde ne s'effectuera pas et suivant
position_x doit être un entier positif : [ -30 ]
position_y doit être un entier positif : [ -4 ]
Valeur invalide dans les paramètres de taille des Widgets
Si la valeur du paramètre width n'est pas un entier strictement positif ou all, la sauvegarde ne s'effectuera pas et suivant
width doit être un entier strictement positif ou [ all, default ] : [ -15 ]
Si la valeur du paramètre height n'est pas un entier strictement positif, la sauvegarde ne s'effectuera pas et suivant
height doit être un entier strictement positif ou [ default ] : [ -5 ]
Si la valeur du paramètre width est "all" et que la valeur du paramètre position_x n'est pas à 0, la sauvegarde ne s'effectuera pas et le message d'erreur suivant apparaîtra :
position_x doit être égale à 0 si width a la valeur "all" : [ 10 ]
Couleur incorrecte dans un widget
Le format de la valeur est une couleur web ( Voir : https://en.wikipedia.org/wiki/Web_colors )
Certains caractères " , ; et ' sont interdits dans la couleur de fond de la barre d'information. Si un de ces caractères est présent dans la valeur de la clé text_color, la sauvegarde ne s'effectuera pas et suivant
La valeur de la clé text_color est incorrecte : [ black;red ]
Valeur invalide dans le paramètre font_zoom_percent
Si la valeur de la clé font_zoom_percent n'est pas un entier positif ou "default", la sauvegarde ne s'effectuera pas et suivant
font_zoom_percent doit être un entier strictement positif ou [ default ] : [ bad_value ]
Widget Titre
Widget titre inexistant
Si aucun widget titre n'est défini, la sauvegarde ne s'effectuera pas et suivant
L'existence d'un widget de type title_widget est obligatoire
Plusieurs widget titre
Si plusieurs widgets titre sont définis, la sauvegarde ne s'effectuera pas et suivant
Il ne peut y avoir qu'un seul widget de type title_widget
Valeur manquante dans le paramètre label
Si la valeur du paramètre label est vide la sauvegarde ne s'effectuera pas et suivant
label ne peut être vide
Valeur invalide dans le paramètre text_align
Si la valeur du paramètre text_align ne correspond à aucune des valeurs possibles listées ci-dessous, la sauvegarde ne s'effectuera pas et suivant
- left
- center
- right
La valeur [ bottom ] pour la clé [ text_align ] est inconnue. Les valeurs possibles sont [ left, center, right, default ]
Widget Séparateur
Valeur invalide dans le paramètre displayed
La valeur doit être un booléen ou "default". Si la valeur n'est pas booléenne, la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ displayed ] est inconnue. Les valeurs possibles sont [ true, false, default ]
Valeur invalide dans le paramètre d'espacement du texte
Si la valeur d'un des paramètres suivants n'est pas un entier compris entre 0 et 100, la sauvegarde ne s'effectuera pas et suivant
- width_percent
width_percent doit être un entier compris entre 0 et 100 ou [ default ] : [ -10 ]
Valeur manquante dans le paramètre label
label ne peut être vide
Valeur invalide dans le paramètre text_align
Si la valeur du paramètre text_align ne correspond à aucune des valeurs possibles listées ci-dessous, la sauvegarde ne s'effectuera pas et suivant
- left
- center
- right
La valeur [ bottom ] pour la clé [ text_align ] est inconnue. Les valeurs possibles sont [ left, center, right, default ]
Widget Météo
Élément d'un widget météo inexistant
Si un élément d'un widget météo défini est inexistant ( au sein de l'ensemble défini pour la météo ), la sauvegarde s'effectuera, l'élément sera affiché dans la météo des services comme inexistante et suivant
L'élément de type [ host ] avec l'item_uuid [ c618793e4e3a4a599d6f1cd3bf2a16fdd ] est inconnu [ item_type: host ]
Élément d'un widget météo mal défini
UUID et nom de l'élément manquant
Si dans l'élément d'un widget météo au moins une des clés n'est pas définie :
- item_uuid,
- item_name,
la sauvegarde s'effectuera et suivant
Au moins une des deux clés suivantes doit être renseignée : [ item_uuid ] ou [ item_name ]
Type de l'élément manquant
Si le type de l'élément d'un widget météo n'est pas défini, la sauvegarde s'effectuera et suivant
La valeur de la clé [ item_type ] est obligatoire
Type d'élément inconnu dans un widget météo
Si la valeur item_type est différente de "host" ou "cluster", la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ item_type ] est inconnue. Les valeurs possibles sont [ host, cluster ]
Valeur invalide dans le paramètre background
Si la valeur de la clé background est différente de " default ", "status_context_from_webui ", "context_then_status", "context_and_status", "only_status" ou "no_background " la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ background ] est inconnue. Les valeurs possibles sont [ status_context_from_webui, context_then_status, context_and_status, only_status, no_background, default ]
Valeur invalide dans le paramètre icon_type
Les valeurs acceptées de la clé icon_type ne sont pas les mêmes pour la zone de gauche et la zone haute-droite
Mauvaise valeur pour zone de gauche
Si la valeur icon_type est différente de " default ", "status_context_from_webui", "context_then_status", "status_then_context", "only_status", "sla_tendency" ou "quality_service_icon" la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ icon_type ] est inconnue. Les valeurs possibles sont [ status_context_from_webui, context_then_status, status_then_context, only_status, sla_tendency, quality_service_icon, default ]
Mauvaise valeur pour zone haute-droite
Si la valeur de la clé icon_type est différente de " default ", "status_context_from_webui", "context_then_status", "status_then_context", "only_status" ou "quality_service_icon" la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ icon_type ] est inconnue. Les valeurs possibles sont [ status_context_from_webui, context_then_status, status_then_context, only_status, quality_service_icon, default ]
Valeur identique entre la zone de gauche et la zone haute-droite
Si la valeur de la clé icon_type est le même entre les deux zones, la sauvegarde ne s'effectuera pas et suivant
La valeur de top_right_area.icon_type [ context_then_status ] et celle de left_area.icon_type [ context_then_status ] ne peuvent pas contenir toutes les deux le statut
Valeur invalide dans le paramètre displayed
La valeur doit être un booléen ou "default". Si la valeur n'est pas booléenne, la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ displayed ] est inconnue. Les valeurs possibles sont [ true, false, default ]
Valeur invalide dans le paramètre show_icon
La valeur de la clé show_icon doit être un booléen ou "default". Si la valeur n'est pas booléenne, la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ show_icon ] est inconnue. Les valeurs possibles sont [ true, false, default ]
Valeur invalide dans le paramètre property_used_as_name
Si la valeur de la clé property_used_as_name est différente de " default ", " definition_name " ou "visualisation_name" la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ property_used_as_name ] est inconnue. Les valeurs possibles sont [ item_name, visualisation_name, default ]
Valeur invalide dans le paramètre nb_lines_max
Si la valeur de la clé nb_lines_max n'est pas un entier positif ou "default", la sauvegarde ne s'effectuera pas et suivant
nb_lines_max doit être un entier strictement positif ou [ default ] : [ bad_value ]
Valeur invalide dans le paramètre vertical_align
Si la valeur de la clé vertical_align est différente de " default ", " bottom ", "middle" ou "top" la sauvegarde ne s'effectuera pas et suivant
La valeur [ bad_value ] pour la clé [ vertical_align ] est inconnue. Les valeurs possibles sont [ top, middle, bottom, default ]
Validation des liens externes
Erreurs
Nom manquant
Si la clé link_name n'est pas renseignée, la sauvegarde ne s'effectuera pas et suivant
link_name ne peut être vide
Caractères interdits
Pour la couleur
La valeur de la clé background_color est incorrecte : [ #F5A;736 ]
Pour la composition de l'URL
Certains caractères ", ', <, >, !, #, $, &, (, ), *, +, ,, /, ;, =, ?, @, [ , ] ou un caractère accentué ou ESPACE ou un émoji, sont interdits pour les propriétés de composition de l'URL. Si un de ces caractères est présent dans la valeur de la clé link_uuid, link_external_part_url ou link_base_url la sauvegarde ne s'effectuera pas et suivant
link_base_url, au moins un des caractères interdit suivant ", ', <, >, !, #, $, &, (, ), *, +, ,, /, ;, =, ?, @, [ , ] ou un caractère accentué ou ESPACE ou un émoji a été détecté : [https://adress_ip:7767]
link_external_part_url, au moins un des caractères interdit suivant ", ', <, >, !, #, $, &, (, ), *, +, ,, /, ;, =, ?, @, [ , ] ou un caractère accentué ou ESPACE ou un émoji a été détecté : [https://adress_ip:7767]
link_uuid, au moins un des caractères interdit suivant ", ', <, >, !, #, $, &, (, ), *, +, ,, /, ;, =, ?, @, [ , ] ou un caractère accentué ou ESPACE ou un émoji a été détecté : [https://adress_ip:7767]
Avertissements
Contient http:// ou https://
Les mots "http://" et "https://" ne doivent pas être présents dans la valeur de la clé link_base_url et links__default_base_url car elles seront construites à la sauvegarde grâce à la valeur choisie dans la clé links__default_link_protocol ou link_protocol.
La valeur de la clé link_base_url , ne doit pas commencer par "http://" ou "https://" : [ https://adress_ip:7767 ]
Éléments non visibles sur des liens externes accessibles sans authentification
Il est possible dans l'interface de configuration de définir si un élément est visible ou non dans les vues ne nécessitant pas d'authentification. Si une météo comporte un de ces éléments avec un lien externe ne nécessitant pas d'authentification, un avertissement prévient l'utilisateur pour lui indiquer qu'un élément de sa supervision ne peut pas être visible par tout le monde.
L'élément n'est pas visible dans les liens externes accessibles sans authentification
Validation des utilisateurs
Erreurs communes
Valeur invalide dans le paramètre user_name
Si la valeur de la clé user_name n'est pas une chaîne de caractère, la sauvegarde ne s'effectuera pas et le message suivant apparaîtra ( selon le type d'utilisateur ):
[ user_name ] doit être une chaîne de caractère : [ -15 ].
Valeur invalide dans le paramètre user_uuid
Si la valeur de la clé user_uuid n'est pas une chaîne de caractère, la sauvegarde ne s'effectuera pas et le message suivant apparaîtra ( selon le type d'utilisateur ):
[ user_uuid ] doit être une chaîne de caractère : [ -15 ].
Avertissements communs
Utilisateur inexistant
L'utilisateur peut ne plus être enregistré entre 2 mises à jours de météos ( l'identifiant unique est introuvé ). Dans ce cas, le message suivant apparaîtra ( selon le type d'utilisateur ):
Le [ owner_user ] avec le [ user_uuid ] [ 30067cfe5adf11e59a28080f08538 ] n'existe pas.
S'il n'y avait que user_name de défini, le message suivant apparaîtra à la place ( selon le type d'utilisateur, toujours ):
Le [ owner_user ] avec le [ user_name ] [ Un utilisateur inconnu ] n'existe pas.
Propriétaire
Pas de propriétaire
Une météo doit avoir un propriétaire. S'il n'y a ni user_name, ni user_uuid, le message suivant apparaîtra:
La valeur de la clé [ owner_user ] est obligatoire.
