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 derrière chacun.

Afficher en Markdown

L'onglet Occurrences Process 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; l'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 seul volet de détail, l'export en CSV et en 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 même session d'observation :

Transition Sens
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 référencées par la condition ont cessé de livrer une valeur. Le juge conserve sa dernière condition confirmée et ne fabrique jamais une levée.
Rétablie Chaque voie référencée livre 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 Sens
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é par-dessus une interruption d'observation, donc une condition déjà vraie peut produire une autre Activée quand un essai démarre ou quand l'application revient, et cette chronologie ne porte aucune ligne synthétique de « session commencée ». Le fichier propre à l'essai enregistre la limite 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 lève aucune notification. Les modifications d'affichage seul (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, celui de l'unité et celui de la procédure, tels qu'ils ont été figés sur le coup.
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 sont arrivées.
Actualiser Relit le journal; infobulle « Actualiser les occurrences ».
Exporter Exporter en CSV…, Exporter en JSON… Écrit les lignes actuellement listées. Dessiné seulement 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 coup.
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é « Aucun message capturé. » dans le volet), et pour les fronts de disponibilité « Signal indisponible : » ou « Signal rétabli : » suivi des noms des voies touché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 ID d'événement L'identité de ce front dans le journal. Pour une observation d'essai, c'est le même identifiant que porte le fichier de l'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 coup.
INSTANTANÉ DE L'OCCURRENCE Unité Le nom de l'unité sur le coup.
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 ID d'essai Seulement pour la portée Essai : l'identifiant de l'essai, le même que montrent les historiques.
INSTANTANÉ DE L'OCCURRENCE ID de modèle, ID d'unité, ID d'occurrence Les identifiants stables derrière les noms, qu'un changement de nom ne touche pas.
SESSION D'OBSERVATION Séquence du journal Le numéro d'insertion de la ligne dans le journal, qui ordonne les lignes partageant un horodatage.
SESSION D'OBSERVATION ID d'observation L'identité de la session qui a observé le front; tous les fronts d'une même session le partagent.
SESSION D'OBSERVATION Séquence de transition Le rang du front dans la session, à partir de 1. Un trou signale un front que le journal n'a pas pu conserver.
SESSION D'OBSERVATION Démarrée 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 employé par la session.
CONFIGURATION FIGÉE ID 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 fichiers 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 de l'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 au même niveau, une levé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

  • « Rien encore dans les occurrences de Process » avec « Les transitions d'occurrence, venues des essais et de la surveillance permanente hors essai, apparaîtront ici. »
  • « Rien dans les occurrences de Process ne correspond à ces filtres » avec « Ajustez la gravité ou les termes de recherche pour élargir cet historique. »
  • La ligne d'état indique « N affichés · page 1 », puis « · filtrées » 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 aucune occurrence (Process > Réglage > Occurrences).
  • Il n'apparie pas les fronts en épisodes avec leur durée : 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 filtre d'essai, ni filtre de portée, ni filtre 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.