Notes de version Canopsis 3.32.0

Canopsis 3.32.0 a été publié le 8 novembre 2019.

Procédure de mise à jour

Suivre la procédure standard de mise à jour de Canopsis.

Correction du format des pbehaviors

Une refonte des pbehaviors dans cette version implique de modifier certains éléments en base de données. Cette procédure n'aura effet qu'en UIv3 ; la compatibilité des pbehaviors en UIv2 n'est plus assurée.

Pour cela, il faut vous connecter à MongoDB et y exécuter les commandes suivantes :

db.views.find().forEach(function(view){
    view.tabs.forEach(function(tab) {
       tab.rows.forEach(function(row) {
           row.widgets.forEach(function(widget) {
               if (widget.type == "ServiceWeather") {
                   widget.parameters.entityTemplate = widget.parameters.entityTemplate.replace(".dtstart", ".tstart")
                   widget.parameters.entityTemplate = widget.parameters.entityTemplate.replace(".dtend", ".tstop")
                   widget.parameters.entityTemplate = widget.parameters.entityTemplate.replace(".behavior", ".name")
                   widget.parameters.entityTemplate = widget.parameters.entityTemplate.replace(".rrule.rrule", ".rrule")
               }
           });
       });
    });
    db.views.save(view);
})

Migration des statistiques du moteur engine-stat Go

Le moteur Go engine-stat (à ne pas confondre avec le moteur Python statsng) n'est plus maintenu et n'est plus activé dans les nouvelles installations, depuis Canopsis 3.31.0.

Néanmoins, si vous l'utilisez toujours, vous devez vous connecter à la base InfluxDB et y exécuter les requêtes suivantes :

select ok::integer,ko::integer into event_state_history_old from event_state_history group by connector,connector_name,component,resource,eid;
drop measurement event_state_history;
select ok::integer into event_state_history from event_state_history_old where ok > 0 group by connector,connector_name,component,resource,eid;
select ko::integer into event_state_history from event_state_history_old where ko > 0 group by connector,connector_name,component,resource,eid;
drop measurement event_state_history_old;

Notez que ces requêtes peuvent prendre plusieurs dizaines de minutes à s'exécuter.

Variable CPS_REDIS_URL obligatoire en environnement Docker

En environnement Docker, les précédentes versions de Canopsis toléraient l'absence d'une variable CPS_REDIS_URL dans l'environnement, et utilisaient alors implicitement la valeur redis://redis:6379/0.

Canopsis 3.32.0 uniformise la gestion de l'URL Redis pour la rendre similaire aux autres composants (RabbitMQ, MongoDB, InfluxDB…), où cette variable est toujours obligatoire.

Vous devez donc vous assurer que les fichiers docker-compose.yml ou compose.env contiennent bien une valeur de ce type :

CPS_REDIS_URL=redis://redis:6379/0

Il n'y a aucune autre action à réaliser pour mettre Canopsis à jour d'une version 3.31 à une version 3.32.

Changements entre Canopsis 3.31.0 et 3.32.0

Voir le ChangeLog complet pour plus de détails techniques.

  • Documentation :
  • API :
    • get-alarms : Ajout d'un champ isActive dans la liste des pbehaviors (#1985)
    • importctx : Correction de la suppression d'une entité si ses impact/depends ont déjà été supprimés auparavant (#1905, #1911)
    • service-weather : Correction du format des pbehaviors ; nécessite la procédure de migration des pbehaviors décrite plus haut (#2009)
  • Moteurs :
    • Moteurs nouvelle génération (Go) :
      • Mise à jour de Go 1.12.9 vers Go 1.12.12 (#142)
      • Correction d'une runtime error, lors du lancement du moteur axe avec l'option -featureStatEvents. Régression introduite dans Canopsis 3.31.0 (#145)
    • Moteurs dépréciés :
      • engine-stat : Amélioration des performances (!252)
  • UI :
    • Harmonisation de l'affichage de l'attribut enabled (#2007)
    • Bac à alarmes :
      • Correction de l'affichage de la pastille « Comportement périodique » dans le Bac à alarmes, lors de la mise en place d'une règle de récurrence (#2012)
    • CAT :
      • Affichage du widget de statistiques uniquement dans les installations CAT (#1970)
    • Explorateur de contexte :
      • Pour chaque entité, ajout de la possibilité de faire un tri sur le tableau de ses pbehaviors (#2016)
    • Event-filter :
      • Ajout d'une barre de défilement, lorsqu'une règle d'event-filter est trop longue (#1987)
    • Météo des services :
      • Correction de l'action de remise en route d'un pbehavior mis en pause (#1992)
    • Statistiques :
      • Correction de la validation de l'intervalle de dates ; le champ tstop pouvant être inférieur à tstart (#1999)
    • CRUD Webhooks :
      • Correction de la possibilité d'éditer un Webhook sans declare_ticket (#1990)