Incidencias
La cronología persistente de todos los flancos de incidencia, observados por el juez de un ensayo o por el vigilante Always fuera de ensayo, con la condición congelada que hay detrás de cada uno.
La pestaña Incidencias de Eventos (/events?view=occurrences) es la cronología
persistente de lo que hicieron las cosas bajo prueba: una fila por flanco de incidencia, tanto
si lo observó el juez de un ensayo como si lo observó el vigilante Always fuera de ensayo. Verla
exige Ver los eventos; exportar exige Exportar/importar históricos. Las incidencias se
definen por modelo en Process > Setup > Occurrences; esta pestaña lee su
histórico y no cambia nada.
Sigue la conducta compartida de las tres cronologías que describe Eventos: 500 filas por página con un paginador debajo, un periodo, una búsqueda retardada, actualización en vivo, un panel de detalle y exportación CSV y JSON de todo el periodo.
Qué es una fila
Una incidencia es una condición booleana sobre los canales de un modelo, con un retardo de activación y un retardo de desactivación. Una fila es una de las cuatro transiciones de una sesión de observación:
| Transición | Significado |
|---|---|
| Activada | La condición subió y se mantuvo durante el retardo de activación. |
| Restablecida | La condición cayó y se mantuvo durante el retardo de desactivación. |
| No disponible | Uno o varios canales a los que la condición se refiere dejaron de entregar valor. El juez mantiene su última condición confirmada y nunca fabrica un restablecimiento. |
| Restaurada | Todos los canales referenciados vuelven a entregar; la condición se evalúa de nuevo y su retardo vuelve a empezar. |
Cada fila dice además en qué ámbito se observó y por qué empezó su sesión:
| Campo | Valores | Significado |
|---|---|---|
| Ámbito | Ensayo, Fuera de ensayo | Ensayo: el juez propio de un ensayo, armado por el procedimiento; el flanco se escribe además en el archivo de ese ensayo. Fuera de ensayo: el vigilante Always que lee los vínculos de la unidad entre ensayos. |
| Motivo | Ejecución iniciada, Ejecución reanudada, Vigilancia iniciada, Observación fuera de ejecución reanudada, Definición modificada | Por qué empezó una nueva sesión de observación: un ensayo arrancó; un ensayo se reanudó tras reiniciarse la aplicación; el vigilante Always arrancó para esta incidencia y esta unidad; la unidad volvió a la observación fuera de ensayo después de un ensayo; o se editaron la condición, los retardos, los canales referenciados, el estado de habilitación o el modo de armado. |
Una sesión nueva empieza de cero: no se arrastra ninguna condición, disponibilidad ni estado de antirrebote a través de un hueco sin observación, así que una condición que ya era cierta puede producir otra Activada cuando arranca un ensayo o cuando la aplicación vuelve, y en esta cronología no hay fila sintética de "sesión iniciada". El archivo del propio ensayo graba el límite de la sesión aunque no siga ninguna transición; Históricos y los informes lo usan para clasificar como Interrumpida una activación abierta más antigua. Esa marca se queda fuera de esta cronología y no genera ninguna notificación. Las ediciones que solo afectan a lo mostrado (nombre, mensaje, gravedad) conservan la sesión y solo cambian las instantáneas posteriores.
Búsqueda y filtro
| Control | Valores | Qué hace |
|---|---|---|
| Búsqueda | Marcador de posición "Buscar por nombre, mensaje, modelo, unidad o procedimiento" | Comparación de tipo "contiene" con el nombre de la incidencia, su mensaje, el nombre del modelo, el de la unidad y el del procedimiento, tal como quedaron en la instantánea del momento. |
| Gravedad | Todas las gravedades (por defecto), Crítica, Advertencia, Info | Conserva solo las transiciones de incidencias que llevaban esa gravedad cuando ocurrieron. |
| Actualizar | Vuelve a leer el diario; descripción emergente "Actualizar las incidencias". | |
| Exportar | Exportar como CSV…, Exportar como JSON… | Escribe las filas listadas en ese momento. Se dibuja solo con Exportar/importar históricos; se atenúa mientras la lista está vacía. |
Las filas
| Parte de la fila | Contenido |
|---|---|
| Hora | Fecha y hora en que el juez observó el flanco (para un ensayo, la marca de tiempo de la propia muestra juzgada). |
| Punto | El tono de la gravedad: crítico para Crítica, precaución para Advertencia, neutro para Info. |
| Nombre | El nombre que tenía la incidencia en ese momento. |
| Resumen | "Transición · obs N (Motivo) · Modelo / Unidad · contexto", donde N es el orden del flanco dentro de su sesión y el contexto es "Ensayo · " seguido del nombre del procedimiento (o solo "Ensayo" cuando no se grabó ningún nombre de procedimiento) o "Fuera de ensayo". Ejemplo: "Activada · obs 1 (Ejecución iniciada) · Horno / Línea 2 · Ensayo · Cocción 180". |
| Nivel | La palabra de la gravedad. |
El mensaje que lleva una fila es el mensaje propio de la incidencia para Activada y Restablecida (vacío cuando la definición no tiene ninguno, mostrado como "No se capturó ningún mensaje." en el panel), y para los flancos de disponibilidad "Señal no disponible:" o "Señal restaurada:" seguido de los nombres de los canales afectados, separados por comas.
El panel de detalle
Al seleccionar una fila se abre el panel con la insignia de la gravedad y el nombre, la marca de tiempo completa, la línea de resumen, el mensaje y cuatro tarjetas:
| Tarjeta | Campo | Contenido |
|---|---|---|
| EVENTO | Nivel | La gravedad. |
| EVENTO | ID de evento | La identidad de este flanco en el diario. Para una observación de ensayo es el mismo identificador que guarda el archivo del ensayo. |
| INSTANTÁNEA DE LA INCIDENCIA | Transición | Activada, Restablecida, No disponible o Restaurada. |
| INSTANTÁNEA DE LA INCIDENCIA | Modelo | El nombre que tenía el modelo en ese momento. |
| INSTANTÁNEA DE LA INCIDENCIA | Unidad | El nombre que tenía la unidad en ese momento. |
| INSTANTÁNEA DE LA INCIDENCIA | Ámbito | Ensayo o Fuera de ensayo. |
| INSTANTÁNEA DE LA INCIDENCIA | Procedimiento | Solo para el ámbito Ensayo: el nombre del procedimiento, o un guion cuando no se grabó ninguno. |
| INSTANTÁNEA DE LA INCIDENCIA | ID de ensayo | Solo para el ámbito Ensayo: el identificador del ensayo, el mismo que muestra Históricos. |
| INSTANTÁNEA DE LA INCIDENCIA | ID de modelo, ID de unidad, ID de incidencia | Los identificadores estables que hay detrás de los nombres, que no cambian al renombrar. |
| SESIÓN DE OBSERVACIÓN | Secuencia del diario | El número de inserción de la fila en el diario, que ordena las filas que comparten marca de tiempo. |
| SESIÓN DE OBSERVACIÓN | ID de observación | La identidad de la sesión que observó el flanco; todos los flancos de una sesión la comparten. |
| SESIÓN DE OBSERVACIÓN | Secuencia de la transición | El orden del flanco dentro de la sesión, empezando por uno. Un hueco significa un flanco que el diario no pudo persistir. |
| SESIÓN DE OBSERVACIÓN | Iniciada | Cuándo empezó la sesión, como marca de tiempo completa. |
| SESIÓN DE OBSERVACIÓN | Motivo | Ejecución iniciada, Ejecución reanudada, Vigilancia iniciada, Observación fuera de ejecución reanudada o Definición modificada. |
| CONFIGURACIÓN CONGELADA | Condición | La condición JavaScript que la sesión juzgó de verdad. |
| CONFIGURACIÓN CONGELADA | Retardo de activación / desactivación | "x ms / y ms", el antirrebote que usó la sesión. |
| CONFIGURACIÓN CONGELADA | ID de los canales referenciados | Los identificadores de los canales que condicionaron la condición, separados por puntos y comas. |
Copiar evento copia una línea: "marca de tiempo | Incidencia | gravedad | nombre | resumen | mensaje | EventId=… | OccurrenceId=… | ObservationId=… | ObservationSequence=… | ObservationStartedAt=… | ObservationReason=… | Condition=… | OnDelayMs=… | OffDelayMs=… | ReferencedChannelIds=…".
Columnas de la exportación
El CSV y el JSON llevan los mismos campos, en este orden: Timestamp (la cabecera del CSV añade la
referencia horaria, "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 y ReferencedChannelIds (separados por
puntos y comas en el CSV, una matriz en el JSON). El JSON es un sobre con TimeZone y Events. Los
nombres de archivo son occurrence-history-<yyyyMMdd-HHmmss>.csv y .json. El CSV sigue la
preferencia de separador decimal de la estación como cualquier otra exportación: con decimales de
punto el separador de lista es ,, con decimales de coma es ;. Una celda que empieza por =,
+, - o @ se prefija con un apóstrofo para que la hoja de cálculo la lea como texto.
Dónde más se graba una incidencia
Una observación de ensayo se escribe primero en el archivo del ensayo y después se copia aquí con el mismo identificador de evento y el contexto del ensayo; si la copia falla, el archivo del ensayo sigue guardando el flanco y Consola lleva una línea de Error que lo dice. Una observación fuera de ensayo existe solo aquí. Todo flanco deja además una línea de Consola bajo el área Process: una activación en el nivel de su gravedad (Crítica como error, Advertencia como advertencia, Info como información), una pérdida de señal en ese mismo nivel, y un restablecimiento y una restauración como información. Una activación levanta además una notificación dentro de la ventana titulada "Incidencia · " seguida del nombre de la unidad y, para una activación de gravedad Advertencia o Crítica observada durante un ensayo, una notificación del sistema mientras la ventana está oculta o minimizada.
Estados vacíos y línea de estado
- "Todavía no hay incidencias" con "Las transiciones de incidencia de los ensayos y de la vigilancia Always fuera de ensayo aparecerán aquí."
- "Ninguna incidencia coincide con estos filtros" con "Ajuste la gravedad o los términos de búsqueda para ampliar este histórico."
- La línea de estado dice "N mostradas · página 1", después " · filtrado" cuando hay una búsqueda, una gravedad o un periodo en vigor; a la derecha, "1 seleccionada" y "Actualizado hh:mm:ss".
Qué no hace la pestaña Incidencias
- No define, arma ni edita una incidencia (Process > Setup > Occurrences).
- No empareja flancos en episodios con duración: esa vista derivada, con sus clasificaciones Interrumpida e Incompleta, está en Históricos para un ensayo y en los paneles propios de la unidad.
- No tiene filtro de unidad, de ensayo, de ámbito ni de fecha; busque por el nombre de la unidad, del modelo o del procedimiento, o abra el ensayo en Históricos.
- No muestra ningún estado en vivo: si una incidencia está activa ahora mismo se lee en el panel de la unidad, no aquí.