DESCRIPTION=Patch cumulatif de la 02.08.01
PATCH_VERSION=08

====================
liste des fixes
--------------------

== PATCH01 ==

SEF-6578,DIRISI-959  Backend - Broker - SLA                Sur de gros environnements le module SLA pouvait planter et ne pas se relancer car il tentait d'écrire un document en base dépassant les
                                                           16Mo


SEF-6579             Backend - Broker - SLA                La sauvegarde des périodes de maintenance héritées sur les Checks dans le module SLA pouvait planter


SEF-6581,DIRISI-961  Backend - Broker - WebUI              La migration des SLAs pouvait ne pas s’arrêter, laissant la donnée à l'ancien format ( V02.07.06 ). A la suite, toutes les requêtes de SLA
                                                           étaient lentes, ralentissant l'UI de Visualisation


SEF-6658             Backend - Broker - SLA                Ajout des paramètres : broker_module_sla_migration_batch_size et broker_module_sla_migration_pause_time pour modifier la taille et la
                                                           fréquence des requêtes à Mongo lors de la migration (paramètre interne, ne pas modifier sans votre support à Shinken)


SEF-6675             UI Visualisation - Bac à événements   Lorsque le volet des favoris et le volet détail étaient ouverts en même temps dans la vue bac à événement, le contenu du volet détail
                     UI Visualisation - Volet Detail       s'affichait avec un décalage vers la droite.


SEF-6678             UI Visualisation - Volet Detail       La date du dernier changement d'un check dans le volet détail d'un check s'affichait au format HTML.


SEF-6727             Backend - Apache - Graphite           Lorsque le serveur de métrologie (Graphite) démarrait trop vite, il créait les répertoires avec des droits incorrects pour les nouvelles
                                                           métriques


SEF-6782             UI Configuration - Collecteur VMWare  Le champ 'shinken.machine_type' avec le type de machine n'était plus remplie par la source


== PATCH02 ==

SEF-5911             Backend - Broker                                Le broker est anormalement long lorsqu'il redémarre


SEF-6369,SESUP-1209  Backend - Arbiter                               Les adresses des hôtes sont désormais disponibles dans les informations d'inventaires fournies aux modules de Brokers et de Receivers
                     Backend - Broker
                     Backend - Receiver


SEF-6374,SESUP-1209  Backend - Receiver                              La configuration du Receiver pour fournir aux modules les Données des hôtes ne prenait en compte que les modèles directement liés aux hôtes,
                                                                     et pas les modèles de ces modèles


SEF-6442             UI Configuration - Page Utilisateur             Les "Administrateur de SI" pouvaient voir la liste des modèles et des groupes utilisateurs en modifiant le HTML du navigateur


SEF-6443             UI Visualisation                                Le glisser-déposer d'un favori provoquait une vulnérabilité de type injection JavaScript (XSS stored) lorsque du code JavaScript était écrit
                                                                     dans le titre du favori


SEF-6466             UI Configuration                                Il était possible d'exécuter du code (Faille XSS) dans la description des modèles ainsi que dans l'espace commentaire d'un groupe d'hôtes.


SEF-6491             Backend - Scheduler                             Un incident est maintenant supprimé 7 jours après ses dates de fermeture et non 7 jours après ses dates d'ouverture


SEF-6513             UI Configuration                                Un hôte en édition (Zone de travail) peut désormais appartenir à plusieurs utilisateurs, et plus uniquement au dernier qui le modifie.


SEF-6514             Maintenance Tools - Shinken-healthcheck         Les sources du Synchronizer sont maintenant dans une nouvelle section "Sources" au lieu d’être dans la section "Modules"


SEF-6524             UI Configuration - Page Hote                    Lorsqu'on ajoutait un nouveau modèle d'hôte, les checks spécifiquement exclus perdaient leur affichage "d'exclusion" jusqu'à la prochaine
                                                                     sauvegarde


SEF-6549             Maintenance Tools - Shinken-healthcheck         Le shinken-healthcheck plantait s'il était lancé depuis un répertoire qui a été supprimé dans un autre shell


SEF-6551             Maintenance Tools - Shinken-healthcheck         Lorsqu'on interrompait le shinken-healthcheck par un CTRL-C, celui-ci affichait une erreur au lieu de s'arrêter proprement


SEF-6557             Backend - Poller                                Lorsqu'une Donnée contenait des caractères pouvant être à l'origine d'une faille XSS, ces caractères n'était pas restitué lors de
                                                                     l'exécution, faussant le résultat


SEF-6565             Backend - Arbiter                               Les lignes de log de l'Arbiter concernant les mises à jour de l'inventaire (vers Broker et Receiver) sont désormais plus claires et moins
                                                                     verbeuses, les logs de vérifications des inventaires fait chaque seconde passant en DEBUG


SEF-6566             Backend - Broker                                Le Broker pouvait afficher des lignes de logs pour les modules internes (comme simple-log) alors qu'il n'avait que des modules externes (par
                                                                     exemple WebUI)


SEF-6567             Backend                                         Quand un démon (notamment le Broker) reçoit une nouvelle configuration de modules ou une mise à jour des configurations des modules, il
                                                                     affiche désormais ses modules (et sous modules) dans ses logs et si les modules sont rajoutés/redémarrés/supprimés


SEF-6568             Backend                                         Désormais les démons affichent leur version dans leur log au démarrage


SEF-6572             Patch Installation                              Les patchs pouvaient s'installer sur une version de Shinken différente de celle du patch (Exemple : installer un patch de 02.07.06 sur une
                                                                     installation en 02.08.01)


SEF-6576             Backend                                         Désormais les démons donnent des informations dans leurs logs sur le chargement du code des modules (depuis /var/lib/shinken/modules) ainsi
                                                                     que la création des instances des modules et leur initialisation


SEF-6577             Patch Installation                              Lorsqu'un sanatize était exécuté, il n'y avait aucun retour dans la sortie standard, tout était logué dans /var/log/shinken/sanatize.log


SEF-6583             Backend - Broker - WebUI                        Le fichier "/etc/shinken-user/configuration/daemons/brokers/modules/webui/webui_cfg_overload.cfg" ne contenait pas les options utilisées par
                                                                     défaut


SEF-6597,DIRISI-963  Backend                                         Le temps de vérification du tunnel ssh pour les connexions Mongodb n'était pas paramétrable, notamment dans les checks Shinken


SEF-6602             UI Visualisation - Volet Detail                 Le sélecteur d'élément de l'onglet historique/SLA ne prenait pas toute la place disponible pour afficher le nom de l'élément


SEF-6614,SESUP-1252  Backend - Arbiter                               Si un Scheduler avait une lenteur lorsque de l'Arbiter tentait de lui envoyait une configuration, ce dernier envoyait immédiatement la
                                                                     configuration à un spare sans attendre que le Scheduler soit déclaré mort (après 3min avec la configuration par défaut)


SEF-6616             UI Visualisation - Les Syntheses - Rapports     L'icône du statut SLA du rapport web ne prenait pas en compte les seuils définis dans le formulaire de configuration du rapport


SEF-6618             UI Visualisation - Les Syntheses - Rapports     Dans le formulaire de configuration des rapports, il était possible d'ajouter le caractère "%" dans les champs des seuils critiques et
                                                                     avertissements du rapport. Désormais ce caractère est interdit pour ces deux champs.


SEF-6688             UI Visualisation - Volet Detail                 Si seule la colonne SLA est affichée dans l'onglet "Historique/SLA" dans le volet détail, le message de chargement des données apparaissait
                                                                     à l'infini dû à une erreur JavaScript


SEF-6716,DIRISI-966  Backend - Apache - Graphite                     Lorsque le serveur de métrologie (Graphite) démarrait trop vite, il créait les répertoires avec des droits incorrects pour les nouvelles
                                                                     métriques


SEF-6744             Documentation                                   Le fichier carbon-relay présent dans la documentation sur la haute disponibilité de la base de métrologie (Graphite) n'était pas à jour.


SEF-6970,DIRISI-971  UI Configuration - Edition de masse             Modification des options de changement de masse pour les données (Locales où hérités, Duplicate foreach, surcharge de check). Rajout d'une
                                                                     option qui permet de modifier les données uniquement si elle est définie (ayant une valeur) dans l'élément.


SEF-7055,SESUP-1294  UI Configuration - Edition de masse             Via l'édition en masse, surcharger une propriété sur plusieurs checks issues du même check en "Duplicate Foreach", affichait une erreur lors
                                                                     du récapitulatif  et une erreur dans les logs : "ValueError: list.remove(x): x not in list"


SEF-7065             UI Configuration - Edition de masse             Sur un check en Duplicate Foreach, si la clé ( remplaçant le $KEY$ ) comportait un espace en début ou fin, les actions de masse pour
                                                                     modifier les surcharges étaient enregistrées en tant que surcharge inactive.


SEF-7068             UI Configuration - Toutes les Pages d'éditions  Pour certaines versions du navigateur Internet Explorer, l'affichage des valeurs des champs de type texte était en gris au lieu d'être en
                                                                     blanc


SEF-7069             UI Configuration - Edition de masse             L'action de masse "Forcé par défaut [Aucun]" sur les données affichait "__DEFAULT_NO_TEMPLATE__" dans la valeur de la donnée sur l'hôte
                     UI Configuration - Page Hote


SEF-7091             Backend - Scheduler                             Les clusters contenant des clusters qui sont en "Période de maintenance" n'étaient pas en "Période de maintenance" hérités


SEF-7095             UI Configuration - Page Hote                    L'ouverture de l'édition de la surcharge d'un check Duplicate Foreach qui contient un ";" dans la clé ( remplaçant le $KEY$ )  provoquait
                                                                     une erreur Javascript et rendait la page inutilisable


SEF-7124,SESUP-1303  UI Configuration - Page Hote                    Si des caractères spéciaux étaient présents dans une surcharge de donnée sur un check, ces caractères apparaissaient encodés au format HTML
                                                                     pour prévenir une faille de sécurité XSS


SEF-7311             UI Configuration - Page Hote                    L'utilisation du copier/coller dans l'encart "Format fichier CFG" des surcharges de la propriété "Liste des URL externes" ne remplissaient
                                                                     les champs correctement. (Pas d'interprétation du format spécifique de la donnée)

== PATCH03 ==

SEF-6333             UI Visualisation - Liste                        Le filtre !(>1)&!4 n'etait pas interprété correctement et laissait des éléments qui contiennent 4 dans la liste


SEF-6462             UI Configuration - Edition de masse             Les étapes de récapitulatifs du changement de masse n'affichaient pas les valeurs par défaut des propriétés


SEF-6533             UI Visualisation - Liste                        Lors de la mise en place d'un check passif, la date de la prochaine vérification débutait au 1er janvier 1970 00:00:00


SEF-6592             Backend - Poller                                Le temps de consommation CPU des sondes ne prenait pas en compte le temps de fork, ce qui provoquait une saturation des pollers dans des
                                                                     environnements avec beaucoup de sondes qui consomment peu de CPU


SEF-6594             UI Configuration                                Des valeurs non numériques pouvaient être sauvegardées pour les propriétés "Début d'escalade" et "Fin de l'escalade" d'une escalade et pour
                                                                     les propriétés "Décalage de la première notification" et "Intervalle de temps entre les notifications" d'un hôte


SEF-6630             Maintenance Tools - Shinken-healthcheck         Si le shinken-healthcheck ne pouvait pas résoudre le nom d'hôte d'un serveur Graphite, il n'affichait pas d'erreur


SEF-6653             Backend - Synchronizer                          Le Synchroniser démarrait si la valeur par défaut de la propriété "Les utilisateurs qui voient l'hôte" n'était pas "everyone" ou "nobody"


SEF-6654             Backend                                         Le nombre d'erreurs et le log de la dernière erreur est désormais affiché lorsqu'un Daemon n'arrive pas à démarrer (via son script d'init)


SEF-6665             Monitoring Pack - Shinken                       Modification du texte du check 'Broker - $KEY$ - Module Event Manager Writer' de : X changes for X status updates ==> X status received
                                                                     which generated X events


SEF-6672             UI Visualisation - Volet Detail                 Dans l'onglet Historique/SLA, le bouton d'extension ou de réduction de la taille d'un résultat ne s'affichait plus sur certains résultats


SEF-6689             UI Visualisation - Volet Detail                 Si seule la colonne SLA est affichée dans l'onglet "Historique/SLA" dans le volet détail, le message de chargement des données apparaissait
                                                                     à l'infini dû à une erreur JavaScript


SEF-6719             Backend - Synchronizer                          L'Arbiter refuse, désormais, un élément qui ont des propriétés se contenant lui-même (ex: un modèle d'hôte qui hérite de lui-même)


SEF-6733             Maintenance Tools - Shinken-healthcheck         Lorsque l'interface de configuration était configurée en https ( http_use_ssl=1 ) et que le Synchronizer était configuré en http ( use_ssl=0
                                                                     ) la commande shinken-healthcheck affichait une erreur ( SSL: WRONG_VERSION_NUMBER )


SEF-6740             UI Configuration - Edition de masse             L'action de masse sur la propriété "Attaché sur les groupes d'hôtes" ne fonctionnait pas pour les checks appliqué aux hôtes et  modèles
                                                                     d'hôtes


SEF-6893             Backend - Synchronizer                          Quand une VM hébergé par un ESXi avait un accent dans son nom, lors de l'import de la source "synchronizer-collector-vmware", la clé de
                                                                     synchronisation apparaissait deux fois et elle n'était pas encodée en "UTF-8".


SEF-6957             UI configuration - Page Check                   Les champs d'édition des valeurs des Données ne se redimensionnait pas lors de l'ouverture de l'onglet "Données"
                     UI Configuration - Page Hote


SEF-7063,DIRISI-973  UI Configuration - Edition de masse             Modifier les droits de visibilité, Notifications ou édition d'un hôte ou d'un Cluster qui avait une valeur "everyone" ne gardait pas la
                                                                     cohérence des données


SEF-7102             UI Configuration - Analyseurs                   Après un redémarrage du Synchronizer, lancer une analyse sur un hôte affichait que le nom de l'hôte n'était pas valide et empêchait le
                                                                     lancement de l'analyse.


SEF-7159             UI Configuration - Edition de masse             Dans l'édition de masse, les options "Remplacer si existant" et "Supprimer si existant" ne permettaient pas de supprimer la valeur d'une
                                                                     propriété (ex. : Modèle d'hôte) si elle n'existait pas (nettoyage)


SEF-7162             UI Configuration - Source  synchronizer-linker  L'ajout d'un nouveau Synchronizer dans le module synchronizer-collector-linker cause l'erreur "Cannot read property 'SetIframe' of
                                                                     undefined" dans le navigateur


SEF-7166             UI Configuration - Edition de masse             Si un élément utilisé dans une action était supprimé durant le Récapitulatif, il n'apparaissait pas dans la colonne "Action" mais bien dans
                                                                     la colonne "Résultat" du résumé des actions


SEF-7199,DIRISI-983  UI Visualisation - Hive                         Les tuiles des tableaux de bords n'affichaient pas l'icône du status (si contexte présent) en grand lorsque le paramétrage des tuiles
                                                                     (tiles_background) dans le fichier webui_cfg_overload.cfg était défini à la valeur "status". (status avant le contexte)


SEF-7220             Backend - shinken-gatherer                      Les données d'activité disque sont maintenant écrites en RAM dans /dev/shm/__check_graphite_iostats.tmp  au lieu de
                                                                     /tmp/__check_graphite_iostats.tmp (sur disque)


SEF-7270             UI Configuration - Page Hote                    Si des caractères spéciaux étaient présents dans une surcharge de donnée sur un check, ces caractères apparaissaient encodés au format HTML
                                                                     pour prévenir une faille de sécurité XSS


SEF-7272             UI Configuration - Page Hote                    L'ouverture de l'édition de la surcharge d'un check Duplicate Foreach qui contient un ";" dans la clé ( remplaçant le $KEY$ )  provoquait
                                                                     une erreur Javascript et rendait la page inutilisable


SEF-7273             Backend - Scheduler                             Les clusters contenant des clusters qui sont en "Période de maintenance" n'étaient pas en "Période de maintenance" hérités


SEF-7274             UI Configuration - Edition de masse             L'action de masse "Forcé par défaut [Aucun]" sur les données affichait "__DEFAULT_NO_TEMPLATE__" dans la valeur de la donnée sur l'hôte
                     UI Configuration - Page Hote


SEF-7275             UI Configuration - Toutes les Pages d'éditions  Pour certaines versions du navigateur Internet Explorer, l'affichage des valeurs des champs de type texte était en gris au lieu d'être en
                                                                     blanc


SEF-7276             UI Configuration - Edition de masse             Sur un check en Duplicate Foreach, si la clé ( remplaçant le $KEY$ ) comportait un espace en début ou fin, les actions de masse pour
                                                                     modifier les surcharges étaient enregistrées en tant que surcharge inactive.


SEF-7277             UI Configuration - Edition de masse             Via l'édition en masse, surcharger une propriété sur plusieurs checks issues du même check en "Duplicate Foreach", affichait une erreur lors
                                                                     du récapitulatif  et une erreur dans les logs : "ValueError: list.remove(x): x not in list"


SEF-7278             UI Visualisation - Favori                       Dans les favoris, les dossiers affichaient le caractère "&#x27;" dans leur nom au lieu d'une apostrophe


SEF-7279             UI Configuration - Edition de masse             Modification des options de changement de masse pour les données (Locales où hérités, Duplicate foreach, surcharge de check). Rajout d'une
                                                                     option qui permet de modifier les données uniquement si elle est définie (ayant une valeur) dans l'élément.

== PATCH04 ==

SEF-6885,SESUP-1282             Backend - Apache - Graphite                     Des requêtes dans Grafana pouvaient échouées sur une erreur 500 (KeyError) si pendant le traitement de leur requête une nouvelle
                                                                                configuration était appliquée


SEF-6952                        Backend - Scheduler                             Quand un check en erreur sortait d'un downtime hérité de son hôte, ses notifications n'étaient pas relancées immédiatement


SEF-6984                        Backend - Broker                                Il y avait une erreur python ('Interrupted system call') lors d'une reconnexion de Mongo dans le log du Broker lorsqu'il s’éteignait


SEF-7218                        UI Configuration - Page Hote                    L'ordre d'utilisation des poller_tag était "commande -> check -> hôte" au lieu de "check -> hôte -> commande" dans l’essai de check du
                                                                                Synchronizer et dans la documentation (L'ordre en production était le bon)


SEF-7281,SESUP-1082,SESUP-1314  Backend - Scheduler                             Sur une grande installation, avec de nombreux Pollers, on pouvait avoir au fil du temps une augmentation de la consommation CPU du Scheduler
                                                                                jusqu'à sa saturation


SEF-7285                        UI Configuration - Toutes les Pages d'éditions  Toutes les propriétés ayant une notion de temps n'affichaient pas forcément l'unité utilisée dans leurs noms (minutes, secondes, etc...)


SEF-7290                        UI Visualisation - Synthese                     La page des applications clés retournait une exception "KeyError(u'\xe9',)", si un nom de check comportait des accents


SEF-7298,SESUP-1321             Backend - Arbiter                               Sur un très grosse configuration (250000 checks et plus) l'Arbiter crachait sur une erreur (OverflowError) quand il tentait d'envoyer la
                                                                                configuration à l'Arbiter spare


SEF-7300                        UI Configuration - Source  synchronizer-linker  Si un élément importé dans Shinken avait sa source désactivée et qu'il était supprimé, lors d'un nouvel import il n'était pas réimporté


SEF-7308,SESUP-1318             Backend - Broker - WebUI                        Sur de grosses installations avec beaucoup d'utilisateurs connectés sur la WebUI, cette dernière pouvait mettre très longtemps avant de
                                                                                terminer de charger une nouvelle configuration


SEF-7354                        UI Configuration                                L'application des différences par action de masse sur les commandes ne supprimait pas les différences


SEF-7356                        UI configuration - Page Check                   Lorsque la valeur "Aucun" était mise à une donnée Duplicate for Each (DFE), il y avait une erreur serveur "TypeError: string indices must be
                                UI Configuration - Page Cluster                 integer" lors de la sauvegarde de l'élément
                                UI Configuration - Page Hote


SEF-7362                        Backend - Scheduler                             Si pendant l’attente d'une nouvelle configuration, l'Arbiter demandait au Scheduler ce qu'il gérait l'appel avait une erreur "'NoneType'
                                                                                object has no attribute 'dump_as_json'"


SEF-7378                        Backend - Broker - SLA                          L'activation de la suppression des anciennes entrées dans la base d'archives du module SLA (paramètre nb_stored_days) pouvait surcharger la
                                                                                base Mongo. Maintenant l'heure de suppression des données est donnée par le paramètre : time_when_delete_old_SLA


SEF-7383,SESUP-1282             Backend - Apache - Graphite                     Dans le cas d'une installation graphite avec un carbon-relay, les requêtes de Grafana généraient une suractivité de la base Mongo car pour
                                                                                avoir le mapping nom->uuid il faisait toutes les 10s une demande de la vue complète au lieu de juste un différentiel

== PATCH06 ==

SEF-6711              Backend - Broker - Graphite-Perfdata       Désormais les paramètres 'broker_module_graphite_perfdata_store_warning_threshold' et 'broker_module_graphite_perfdata_store_error'
                                                                 permettent de bloquer l'envoi des seuils warning et critical des métriques


SEF-7450              UI Visualisation - Volet Detail            La largeur du volet détail d'un élément était réinitialisé lors d'un changement d'élément ou d'un rafraîchissement de la page.


SEF-7490              Maintenance Tools - shinken-backup         L'option courte "--rocd" de la commande "shinken-restore" n'était pas correctement affichée dans l'aide ( l'option longue étant "restore-
                      Maintenance Tools - shinken-restore        only-configuration-database" )


SEF-7552              Backend - Poller                           Les Reactionners passif ne recevaient aucune action à réaliser. Désormais ils reçoivent correctement leurs actions et un log donnant le
                      Backend - Reactionner                      nombre de checks/événements/notifications donnés par le Scheduler a été ajouté pour les Reactionners et les Pollers


SEF-7558,DIRISI-993   Backend - Graphite - Carbon-cache          En cas d'une arrivée massive de métriques, le démon écrivain Graphite ( carbon-cache ) n'arrivait plus à écrire les métriques à cause d'un
                                                                 manque de file descriptors. Désormais sa limite de file descriptors passe de 1024 à 65535


SEF-7564              Maintenance Tools - shinken-backup         Ajout de la sauvegarde des collections de SLA bruts archivées (has_been_archive_*) et de SLA bruts invalides (invalide_*) dans le script
                      Maintenance Tools - shinken-restore        shinken-backup


SEF-7571              UI Configuration                           Ajout pour les administrateurs Shinken d'une bulle d'information affichant la version complète de Shinken dans la barre de navigation
                      UI Visualisation


SEF-7574              Monitoring Pack - Shinken                  Le check "Scheduler - $KEY$ - Performance" n'indiquait pas le nombre de notifications et événements en retard, et ne prenait pas en compte
                                                                 le nombre d'event handlers lancés dans les activités des Reactionners


SEF-7580              Maintenance Tools - Shinken-healthcheck    Le Shinken-Healtcheck affichait le Broker en status 'OK' alors qu'il n'avait pas encore reçu sa configuration par l'Arbiter.


SEF-7602              UI Configuration - Page Hote               L'essai de check sur un Poller ne prenait pas en compte le timeout du Poller


SEF-7613              Backend - Synchronizer                     Le fait d'oublier une parenthèse fermante ou de mettre des parenthèses inutiles dans la propriété "Attaché sur les modèles d'hôte" causait
                                                                 une erreur 500 ( AttributeError: 'NoneType' object has no attribute 'join' )


SEF-7623              Backend - Scheduler                        Lorsqu'on supprimait un DOWNTIME appliqué à un hôte, ceux hérités par les sur les checks restaient appliqués. Il fallait redémarrer
                                                                 l'Arbiter ou les Schedulers pour les supprimer.


SEF-7627              Backend - Broker - WebUI                   Les tuiles des portails n'affichaient pas les périodes de maintenance partielle si dans le calcul du statut deux widgets avaient des
                                                                 contextes différents (downtime, prise en compte et flapping).


SEF-7640              Addon - nagvis-shinken-architecture        Les cartes générées par le module architecture-export n'étaient plus accessible à cause de l'erreur "The attribute maps in section
                                                                 rotation_ALL in main configuration file does not match the correct format. Please review your configuration"


SEF-7693,SESUP-1361   Monitoring Pack - Shinken                  Lorsque la métrologie utilisait un carbon-relay ( Ecriture en Y ), le check "Broker - $KEY$ - Module Metrology Writer" affichait seulement
                                                                 le statut de chacun des noeuds. Un nouveau check "shinken-graphite" affiche désormais le détail pour chaque noeud


SEF-7698,SESUP-1361   Patch Installation                         Les fichiers de configuration de graphite étaient écrasés lors de l'installation d'un patch au lieu d'être en extension patchnew ( dans le
                                                                 répertoire /opt/graphite/conf/ )


SEF-7706,SESUP-1361   Backend - Scheduler                        Le démon Scheduler pouvait monter indéfiniment en consommation RAM et CPU à cause d'éléments d'exécutions de checks qui n'étaient pas
                                                                 nettoyés à moins de reçevoir une nouvelle configuration de la part de l'Arbiter


SEF-7715              Backend - Broker                           Lorsqu'un module de Broker externe ( ie:WebUI, livedata, livestatut ) était redémarré, le module ne recevait pas de nouveaux broks initiaux
                                                                 ce qui faisait que les modules n'avaient les éléments de supervisions


SEF-7718              Patch Installation                         Lorsque des fichiers de configuration par défaut (ex. : arbiter-master.cfg) étaient supprimés, l'installation d'un patch les recréait et le
                                                                 revert d'un patch s'arrêtait sur une erreur : Cannot delete the file /etc/shinken/arbiters/arbiter-master.cfg


SEF-7723              Backend - Scheduler                        Le démon Scheduler n'était pas capable de charger un second module de retention dans sa configuration sans être redémarré ( configuration
                                                                 reçu de l'Arbiter )


SEF-7729              Backend - Broker                           Sur un environnement où les WebUI recevaient beaucoup de requêtes HTTP, les Broks n'étaient pas absorbés assez vite, ce qui provoquait des
                                                                 statuts "DONNÉE MANQUANTE" dans l'interface de Visualisation


SEF-7748              Backend                                    Désormais, avoir plusieurs modules de rétention mongo sur le Scheduler n'affiche plus une erreur dans le shinken-healthcheck mais un
                                                                 avertissement (AT_RISK) car il est possible d'avoir deux modules actifs dans le cas d'une migration de rétention


SEF-7800              Backend - Arbiter                          Désormais le paramètre broker__manage_spare__spare_must_have_the_same_list_of_module_type permet d'autoriser un démon Broker Spare qui n'a
                                                                 pas strictement les mêmes types de modules que son master (cas d'un Spare en mode dégradé)


SEF-7803              Maintenance Tools - shinken-restore        La commande shinken-restore ne prenait pas en compte les arguments s'ils se trouvaient après le dossier à restaurer ( exemple : --with-key-
                                                                 backup HASH )


SEF-7805              Backend - Broker - broker-module-livedata  Lorsque le broker était stoppé puis redémarré, le module livestatus affichait dans les log du broker une erreur de type "Address already in
                                                                 use"


SEF-7812              Backend - Broker - WebUI                   Lorsque le module de la WebUI était en pause pendant plus de 30 secondes ( par exemple par un appel du garbage collector ), cela provoquait
                                                                 un deadlock dans la WebUI ce qui crashait les UI de Visualisation


SEF-7823,DIRISI-1002  Backend - Scheduler                        Sur des installations datant d'avant la 02.03.03-U01, des objets notifications pouvaient rester indéfiniment en mémoire dans le Scheduler,
                                                                 mais sans être lancées, et être détectées comme "late" par le Check du Scheduler


SEF-7828              Backend - Synchronizer                     L'import d'un hôte crashait avec l'erreur : "KeyError: u'view_contacts'" s'il avait un modèle d'hôte avec la propriété "Les utilisateurs qui
                                                                 voient l'hôte" à vide et l'héritage additif activé ( le plus ) et que ce modèle héritait d'un autre modèle d'hôte


SEF-7835              UI Visualisation                           La demande de confirmation de la sauvegarde pour la vue "Bac à événement" redirigeait instantanément sur la liste "Tous les éléments"


SEF-7838              UI Configuration                           Le message de validation des propriétés URL externe et liste des URL externes retourné par le serveur indiquait que les caractères
                                                                 <>$"'()‵@*!,;|#{}[] et <Espace> était interdit alors que seuls les caractères ", ' et <Espace> l'était vraiment.


SEF-7850              Patch Installation                         Lors de l'installation d'un patch, les erreurs rencontrées pendant l'installation des RPM n'étaient pas affichées et l'installation du patch
                                                                 continuait


SEF-7856,SESUP-1383   Backend - Scheduler - Mongodb Retention    Si plusieurs Schedulers ( non spares ) avec le module de retention Mongodb pointaient vers une même base, les Schedulers pouvaient se
                                                                 bloquer aléatoirement sur la phase de suppression des anciennes données de retention


SEF-7859              UI Configuration - Page Hote               Pour une surcharge inactive sur un check Duplicate For Each ( non sauvegardé, éditions en cours ), la valeur de la surcharge devenait
                                                                 "undefined" si le nom du check était changé ( via la modification de la Donnée DFE )


SEF-7863,DIRISI-1004  Backend - Broker - SLA                     Mettre à jour ou restaurer des données SLA de la version V02.07.02-Patched-05 (ou supérieurs), avec le paramètre 'nb_stored_days' activé,
                                                                 faisait  planter le module SLA avec l'erreur : "KeyError: 'last_update'"


SEF-7870              Backend - shinken-gatherer                 Pour les démons présents sur une machine virtuelle de type VMWare, les checks Shinken ne remontaient pas les informations et avertissements
                                                                 sur le pourcentage de CPU volé ( %ready sur VMWare )


SEF-7901              Backend - Broker - WebUI                   Désormais les appels sur l'UI de Visualisation sont plus rapides grâce à un système de cache permettant de ne pas recalculer à chaque appel
                                                                 la liste des services et hôtes que les utilisateurs (non admin) ont le droit de voir


SEF-7903,SESUP-1396   Backend - Synchronizer                     Les différences sur des surcharges de check accrochés à des checks Duplicate For Each invalide ne provoque plus d'erreur 500 "raise
                                                                 KeyError(overrides['duplicates'])" dans la liste des éléments


SEF-7915              Backend - Broker - WebUI                   Au démarrage du module WebUI, les appels des UI de Visualisation étaient bloqués. L'UI faisait une demande toutes les 2s jusqu’à la fin du
                      UI Visualisation                           rechargement, créant une surcharge du module WebUI. Ces demandes seront seulement faites toutes les 60s


SEF-7929              Backend - Scheduler                        Un démon Scheduler pouvait planter aléatoirement lorsqu'il récupérait une nouvelle configuration et qu'il avait un élément ( hôte/check )
                                                                 qui avait une importance métier élevée et changeait de statut à ce moment là, impactant un cluster moins prioritaire


SEF-7958              UI Visualisation - Widget Graphics         Si un Dashboard contenait une widget "PAGE WEB", l'ajout d'une deuxième widget "PAGE WEB", et la modification de l'adresse de la première
                                                                 widget, faisait disparaître cette dernière


SEF-7977              UI Configuration                           Sur Internet explorer, le rajout d'un modèle dans la propriété "Modèles d'hôte hérités" ne s'affichait pas et une erreur JS était présente
                                                                 dans la console. Le modèle apparaissait correctement après la sauvegarde

== PATCH06.01 ==

SEF-7984             UI Configuration - Edition de masse  L'action de masse "Restaurer depuis staging" sur des hôtes dans l'état "Rejeté (créé)" ou en "Edition (créé)" provoquait une erreur 500
                                                          (Internal Server Error) ainsi qu'un Traceback (KeyError: '_SYNC_KEYS') dans les logs du Synchronizer


SEF-7990             Installation                         Le script de sanatize permettant de remplir automatiquement le champ spare_daemon des configuration des Brokers plantait si un caractère
                                                          accentué était présent dans un fichier .cfg d'un Broker


SEF-8011,SESUP-1414  UI Visualisation                     Juste après la réception d'une nouvelle configuration, si la première page affichée par un utilisateur Administrateur de SI était un portail
                                                          ou un tableau de bord, alors il ne voyait plus qu'un seul élément dans la liste.


SEF-8013,SESUP-1414  Backend - Broker                     Le chargement d'un tableau de bord qui n'existait pas provoquait une erreur "AttributeError" dans les logs du Broker ( par exemple: lien sur
                     UI Visualisation - Hive              un tableau de bord supprimé )

== PATCH07 ==

SEF-8059             Backend                              L'avertissement "Un nom de domaine valide ou une adresse IP doivent être spécifiés" était retournée lors de la validation des URL
                                                          externes même si l'url était valide

SEF-8059             Backend - Broker - WebUI             La liste d'éléments de la WebUI pour des utilisateurs non admin n'était plus triée sur le nom d'hôte par défaut

SEF-8071             Installation, Maintenance Tools      Les sanatizes "fix_double_link" et "fix_default_item_se_uuid" étaient en erreur si des éléments contenaient des liens vers des éléments
                                                          qui n'existaient pas

SEF-8086             Installation, Maintenance Tools      Sanatize pour retirer les uuid dupliqués dans la collection des tableaux de bord sauvegardés en base de donnée ( replace_duplicate_widgets_uuids )
                                                          ne fonctionnait pas sur des objets ayant des structures inférieures à la version 2.4

SEF-8097             UI Configuration - Page Escalade     Le texte d'aide de la propriété "Intervalle de temps entre les notifications" ne précisait pas le terme escalade dans son contenu


== PATCH08 ==


SEF-6723             UI Visualisation                                   Changer la langue dans le fichier de configuration du module WebUI ne changeait pas la langue dans l'interface de visualisation ( paramètre
                                                                        lang du fichier webui.cfg )


SEF-7653             Addon - nagvis-shinken-architecture                Les checks "Broker - $KEY$ - Module Visualisation UI - Metrology Reader" et "Broker - $KEY$ - Module Visualisation UI - SLA Reader" étaient
                                                                        toujours en erreur sur les cartes nagvis même si leur statuts était OK dans l'interface de visualisation


SEF-7953             Monitoring Pack - Shinken                          Les mots-clés tels que les statuts retournés par les checks ( OK, WARNING, CRITICAL, ... ), ne gardaient pas leur style ( gras, italique,
                                                                        couleur ) dans les mails reçus sur Outlook.


SEF-7976,SESUP-1408  Backend - Synchronizer                             Ajouter une surcharge de check qui avait déjà été crée par l'import d'une source sur un hôte avec les actions de masse pouvait provoquer un
                                                                        crash de l'Arbiter


SEF-8001,SESUP-1410  UI Configuration - Toutes les Pages d'éditions     La suppression d'un élément ne le retirait pas des surcharges de checks dans lesquelles il était utilisé, ce qui bloquait la mise en
                                                                        production.


SEF-8007,SESUP-1411  Backend - Broker - event-manager-reader            Désormais les requêtes sur la page des évènements dans la WebUI sont plus rapides quand on filtre moins de 100000 éléments (hôtes, clusters
                                                                        ou checks) par leurs nom ou leur type


SEF-8032             UI Configuration                                   L'option "-- Forcé par défaut [ valeur ] --" n'était disponible que si un héritage était présent sur la propriété, pour des raisons de
                                                                        cohérence et de lisibilité, elle sera présente pour toutes les propriétés qui peuvent être héritées


SEF-8074,SESUP-1429  UI Visualisation - Module d'authentification LDAP  Les logs ne permettait pas de suivre la vérification de l'authentification des utilisateurs. Désormais le tag "AUTHENTICATION" permet de
                                                                        suivre le déroulé d'une authentification.


SEF-8080,SESUP-1429  UI Visualisation - Module d'authentification LDAP  Le module crashait avec l'erreur ('NoneType' object has no attribute 'result') quand deux utilisateurs se connectait au même moment ou qu'un
                                                                        utilisateur double-cliquait sur le bouton de connexion


SEF-8099,SESUP-1431  Backend - Scheduler                                Si dans un Scheduler un module de rétention de type "mongodb_retention" ou "pickle_retention_file" plantait il n'était pas redémarré et le
                                                                        Scheduler ne chargait ni ne sauvegardait plus la rétention qui était donc perdue.


SEF-8105             Monitoring Pack - Shinken                          Désormais le check Scheduler Performance affiche la date et la durée du dernier chargement/sauvegarde de rétention, et averti si la dernière
                                                                        sauvegarde est trop âgée


SEF-8107             Backend - Broker - WebUI                           Lorsque l'on utilisait plusieurs modules de type WebUI, le check "Broker - $KEY$ - Module Visualisation UI - Metrology Reader" affichait
                                                                        l'état de tous les Backends Graphite au lieu de juste celui de la WebUI concernée.


SEF-8109             UI Configuration - Page Hote                       Les données protégées provenant d'un modèle d'hôtes apparaissaient avec du code HTML dans l'interface (<span class="shinken-encrypted-label
                                                                        shinken-between-parathensis">Ce champ est protégé</span>)


SEF-8114,SESUP-1429  UI Visualisation - Module d'authentification LDAP  Le fichier contenant les valeurs par défaut n'existait pas ( /etc/shinken/_default/configuration/modules/auth-active-directory/mapping.json
                                                                        ). Il a été crée et deplacé dans "/etc/shinken/_default/modules/auth-active-directory/mapping.json".


SEF-8116             UI Configuration - Liste                           Les filtres avec un selecteur étaient affichés en erreur lorsqu'on sélectionnait le filtre "-- Vide --"


SEF-8124             UI Configuration - Page Hote                       Du JavaScript pouvait être interprété dans le retour d'une commande pendant l'essai de check lorsque des balises "script" étaient précédées
                                                                        du caractère "|"  (Partie "Métrique")


SEF-8130             Backend - Scheduler                                L'output court d'un check n'est plus remplacé par "(unreacheable host)" quand son hôte vient d'être détecté en CRITICAL/HARD & que
                                                                        enable_problem_impacts_states_change=1 (dans shinken.cfg). Désormais on lui rajoute un message explicatif au début.


SEF-8164             UI Configuration                                   Lors de l'authentification par header HTTP, des noms d'utilisateurs incomplets autorisaient quand même la connexion si le nom était présent
                                                                        comme sous partie d'un autre utilisateur.


SEF-8167             UI Visualisation - Favori                          Après avoir édité le nom d'une vue (Favori), le changement de vue pouvait faire disparaître le nom de la nouvelle vue.




====================
Sanatize:
--------------------
Ce patch a besoin d'exécuter un sanatize sur le daemon synchronizer : change_work_area_info_for_multiple_users, fix_new_spare_daemon_broker_option
Le sanatize necessite l'arrêt de tous les daemons shinken


====================
Procédure d'installation:
--------------------
Sur un serveur Shinken :
  - Installer le patch : ./install-patch.sh
    * pour installer le patch sans qu'il demande de confirmations:  ./install-patch.sh --force
  - IMPORTANT: ceci va redémarrer les daemons arbiter, broker, receiver, scheduler, synchronizer, poller, reactionner, gatherer


====================
Procédure de désinstallation:
--------------------
  - Désinstaller le patch : ./revert-patch.sh
    * pour désinstaller le patch sans qu'il demande de confirmations:  ./revert-patch.sh --force

  - IMPORTANT:
    * ceci va redémarrer les daemons arbiter, broker, receiver, scheduler, synchronizer, poller, reactionner, gatherer
    * Le revert du patch remettra shinken dans sa version majeure sans patch actif





