Occurrences

La chronologie durable de chaque front d'occurrence, observé par le juge d'un essai ou par le surveillant Toujours hors essai, avec la condition figée qui se trouve derrière.

Afficher en Markdown

L'onglet Occurrences de Événements (/events?view=occurrences) est la chronologie durable de ce qu'ont fait les objets sous essai : une ligne par front d'occurrence, qu'il ait été observé par le juge d'un essai ou par le surveillant Toujours hors essai. Le voir demande Voir les événements ; exporter demande Exporter/importer les historiques. Les occurrences se définissent par modèle sous Process > Réglage > Occurrences ; cet onglet lit leur historique et ne change rien.

Il suit la conduite commune aux trois chronologies décrite sur Événements : 500 lignes par page avec une pagination dessous, une période, une recherche temporisée, l'actualisation en direct, un volet de détail, l'export CSV et JSON de toute la période.

Ce qu'est une ligne

Une occurrence est une condition booléenne sur les voies d'un modèle, avec un retard à la montée et un retard à la retombée. Une ligne est l'une des quatre transitions d'une session d'observation :

Transition Signification
Activée La condition est montée et s'est maintenue pendant le retard à la montée.
Levée La condition est retombée et s'est maintenue pendant le retard à la retombée.
Indisponible Une ou plusieurs voies que la condition référence ont cessé de livrer une valeur. Le juge conserve sa dernière condition confirmée et ne fabrique jamais une retombée.
Rétablie Toutes les voies référencées livrent de nouveau ; la condition est évaluée à neuf et son retard repart.

Chaque ligne dit aussi dans quelle portée elle a été observée et pourquoi sa session a commencé :

Champ Valeurs Signification
Portée Essai, Hors essai Essai : le juge propre à un essai, armé par la procédure ; le front est aussi écrit dans le fichier de cet essai. Hors essai : le surveillant Toujours, qui lit les liaisons de l'unité entre deux essais.
Motif Exécution démarrée, Exécution reprise, Surveillance démarrée, Observation hors exécution reprise, Définition modifiée Pourquoi une nouvelle session d'observation a commencé : un essai a démarré ; un essai a repris après un redémarrage de l'application ; le surveillant Toujours a démarré pour cette occurrence et cette unité ; l'unité est revenue à l'observation hors essai après un essai ; ou la condition, les retards, les voies référencées, l'état d'activation ou le mode d'armement ont été modifiés.

Une nouvelle session part de rien : aucun état de condition, de disponibilité ou d'anti-rebond n'est reporté à travers un intervalle non observé, donc une condition déjà vraie peut produire une nouvelle transition Activée quand un essai démarre ou quand l'application revient, et il n'y a pas de ligne synthétique « session démarrée » dans cette chronologie. Le fichier propre à l'essai enregistre la frontière de session même quand aucune transition ne suit ; les historiques et les rapports s'en servent pour classer une activation ouverte plus ancienne comme Interrompue. Ce marqueur reste hors de cette chronologie et ne déclenche aucune notification. Les modifications purement d'affichage (nom, message, gravité) conservent la session et ne changent que les instantanés ultérieurs.

Recherche et filtre

Contrôle Valeurs Ce qu'il fait
Recherche Texte d'exemple « Rechercher un nom, un message, un modèle, une unité ou une procédure » Comparaison « contient » sur le nom de l'occurrence, son message, le nom du modèle, le nom de l'unité et le nom de la procédure, tels qu'ils ont été figés sur le moment.
Gravité Toutes les gravités (par défaut), Critique, Avertissement, Information Ne garde que les transitions des occurrences qui portaient cette gravité au moment où elles ont eu lieu.
Actualiser Relit le journal ; infobulle « Actualiser les occurrences ».
Exporter Exporter en CSV…, Exporter en JSON… Écrit les lignes actuellement listées. Dessiné uniquement avec Exporter/importer les historiques ; grisé tant que la liste est vide.

Les lignes

Partie de la ligne Contenu
Heure Date et heure auxquelles le juge a observé le front (pour un essai, l'horodatage propre à l'échantillon jugé).
Point La teinte de la gravité : critique pour Critique, prudence pour Avertissement, neutre pour Information.
Nom Le nom de l'occurrence sur le moment.
Résumé « Transition · obs N (Motif) · Modèle / Unité · contexte », où N est le rang du front dans sa session et où le contexte est « Essai · » suivi du nom de la procédure (ou simplement « Essai » quand aucun nom de procédure n'a été enregistré) ou « Hors essai ». Exemple : « Activée · obs 1 (Exécution démarrée) · Four / Ligne 2 · Essai · Cuisson 180 ».
Niveau Le mot de la gravité.

Le message que porte une ligne est le message propre à l'occurrence pour Activée et Levée (vide quand la définition n'en a pas, affiché comme « Aucun message capturé. » dans le volet), et, pour les fronts de disponibilité, « Signal indisponible : » ou « Signal rétabli : » suivi des noms des voies concernées, séparés par des virgules.

Le volet de détail

Sélectionner une ligne ouvre le volet avec le badge de gravité et le nom, l'horodatage complet, la ligne de résumé, le message, et quatre cartes :

Carte Champ Contenu
ÉVÉNEMENT Niveau La gravité.
ÉVÉNEMENT Identifiant de l'événement L'identité de ce front dans le journal. Pour une observation d'essai, c'est le même identifiant que celui que détient le fichier d'essai.
INSTANTANÉ DE L'OCCURRENCE Transition Activée, Levée, Indisponible ou Rétablie.
INSTANTANÉ DE L'OCCURRENCE Modèle Le nom du modèle sur le moment.
INSTANTANÉ DE L'OCCURRENCE Unité Le nom de l'unité sur le moment.
INSTANTANÉ DE L'OCCURRENCE Portée Essai ou Hors essai.
INSTANTANÉ DE L'OCCURRENCE Procédure Seulement pour la portée Essai : le nom de la procédure, ou un tiret quand aucun n'a été enregistré.
INSTANTANÉ DE L'OCCURRENCE Identifiant de l'essai Seulement pour la portée Essai : l'identifiant de l'essai, le même que celui qu'affichent les historiques.
INSTANTANÉ DE L'OCCURRENCE Identifiants du modèle, de l'unité, de l'occurrence Les identifiants stables derrière les noms, inchangés par un changement de nom.
SESSION D'OBSERVATION Rang dans le journal Le numéro d'insertion de la ligne dans le journal, qui ordonne les lignes partageant un horodatage.
SESSION D'OBSERVATION Identifiant de l'observation L'identité de la session qui a observé le front ; chaque front d'une même session le partage.
SESSION D'OBSERVATION Rang de la transition L'ordre du front dans la session, à partir de 1. Un trou signale un front que le journal n'a pas pu persister.
SESSION D'OBSERVATION Début Quand la session a commencé, en horodatage complet.
SESSION D'OBSERVATION Motif Exécution démarrée, Exécution reprise, Surveillance démarrée, Observation hors exécution reprise ou Définition modifiée.
CONFIGURATION FIGÉE Condition La condition JavaScript que la session a réellement jugée.
CONFIGURATION FIGÉE Retard à la montée / à la retombée « x ms / y ms », l'anti-rebond qu'a employé la session.
CONFIGURATION FIGÉE Identifiants des voies référencées Les identifiants des voies qui conditionnaient la condition, séparés par des points-virgules.

Copier l'événement copie une seule ligne : « horodatage | Occurrence | gravité | nom | résumé | message | EventId=… | OccurrenceId=… | ObservationId=… | ObservationSequence=… | ObservationStartedAt=… | ObservationReason=… | Condition=… | OnDelayMs=… | OffDelayMs=… | ReferencedChannelIds=… ».

Colonnes de l'export

Le CSV et le JSON portent les mêmes champs, dans cet ordre : Timestamp (l'en-tête du CSV y ajoute la référence de temps, « Timestamp (UTC-03:00) »), JournalSequence, Severity, Name, Transition, Scope, Model, ModelId, Unit, UnitId, Procedure, RunId, Message, EventId, OccurrenceId, ObservationId, ObservationSequence, ObservationStartedAt, ObservationReason, Condition, OnDelayMs, OffDelayMs et ReferencedChannelIds (séparés par des points-virgules dans le CSV, un tableau dans le JSON). Le JSON est une enveloppe avec TimeZone et Events. Les noms de fichier sont occurrence-history-<yyyyMMdd-HHmmss>.csv et .json. Le CSV suit la préférence de séparateur décimal de la station comme tous les autres exports : avec le point décimal, le séparateur de liste est , ; avec la virgule décimale, c'est ;. Une cellule qui commence par =, +, - ou @ est préfixée d'une apostrophe pour qu'un tableur la lise comme du texte.

Où une occurrence est enregistrée par ailleurs

Une observation d'essai est d'abord écrite dans le fichier propre à l'essai, puis copiée ici avec le même identifiant d'événement et le contexte de l'essai ; si la copie échoue, le fichier d'essai détient tout de même le front et Console porte une ligne Error qui le dit. Une observation hors essai n'existe qu'ici. Chaque front laisse aussi une ligne de Console sous le domaine Process : une activation au niveau de sa gravité (Critique en erreur, Avertissement en avertissement, Information en information), une perte de signal à ce même niveau, une retombée et un rétablissement en information. Une activation lève en plus une notification dans la fenêtre, intitulée « Occurrence · » suivi du nom de l'unité et, pour une activation Avertissement ou Critique observée pendant un essai, une notification du système d'exploitation tant que la fenêtre est masquée ou réduite.

États vides et ligne d'état

  • « Aucune occurrence pour l'instant » avec « Les transitions d'occurrence venues des essais et de le surveillant Toujours hors essai apparaîtront ici. »
  • « Aucune occurrence ne correspond à ces filtres » avec « Ajustez la gravité ou les termes de recherche pour élargir cet historique. »
  • La ligne d'état indique « N affichées · page 1 », puis « · filtré » quand une recherche, une gravité ou une période est en vigueur ; à droite, « 1 sélectionnée » et « Mise à jour hh:mm:ss ».

Ce que l'onglet Occurrences ne fait pas

  • Il ne définit, n'arme ni ne modifie une occurrence (Process > Réglage > Occurrences).
  • Il n'apparie pas les fronts en épisodes avec des durées : cette vue dérivée, avec ses classements Interrompu et Incomplet, se trouve dans Historiques pour un essai et sur les volets propres à l'unité.
  • Il n'a ni filtre d'unité, ni d'essai, ni de portée, ni de date ; cherchez par le nom de l'unité, du modèle ou de la procédure, ou ouvrez l'essai dans les historiques.
  • Il ne montre aucun état en direct : savoir si une occurrence est active en ce moment se lit sur le volet de l'unité, pas ici.