Ir al contenido
JelinaJelina DocumentationDocumentación técnica
Volver al sitio oficial

Alarmas y ciclo de vida de los eventos

Edge-EMS Builder admite tanto registros individuales de alarma como eventos con un proceso de recuperación. Al crear reglas de supervisión continua, los eventos permiten seguir todo el proceso de aparición de una anomalía, recuperación y resolución manual.

Modalidad Uso adecuado Comportamiento
Registro de alarma Notificación sencilla y conservación de cada activación Cada acción genera un registro independiente que puede marcarse como tratado
Evento de alarma Supervisión continua de fallos y seguimiento de su tratamiento Agrupa el mismo origen e identificador de alarma y registra el número de apariciones y los cambios de estado

Los scripts existentes pueden seguir utilizándose. Los registros ya creados no se convierten automáticamente en eventos.

Activo (ACTIVE) → Recuperado (RECOVERED) → Resuelto (RESOLVED)

  • Las anomalías repetidas se agrupan en el mismo evento sin resolver, conservando la primera y la última aparición.
  • Una observación normal lleva el evento a Recuperado; un operador o administrador confirma su resolución.
  • Si la anomalía reaparece después de la recuperación, se reactiva el evento. Si reaparece después de resolverse, se crea uno nuevo.
  • Un dispositivo desconectado o un dato no válido representa un estado desconocido y no se interpreta como recuperación.

Las alarmas se identifican mediante una combinación estable de sourceCode + alarmKey. Las reglas deben informar continuamente de estados anómalos, normales o desconocidos. Si solo se ejecutan ante anomalías, el sistema no puede determinar cuándo se produce la recuperación.

El siguiente ejemplo utiliza el punto genérico demo_temperature. Sustitúyelo por un punto real y configura un periodo de supervisión adecuado:

local value = tonumber(${demo_temperature})
local state = "UNKNOWN"
if value then
if value > 80 then state = "ACTIVE" else state = "NORMAL" end
end
return {buildAlarmObservationMap("demo_monitor", "demo_temperature_high",
state, "高温", "1", "温度状态:" .. tostring(value))}

El script se utiliza en acciones de disparadores EXPRESSION. El identificador de alarma no debe incluir la temperatura actual ni una marca de tiempo, para evitar crear un evento nuevo con cada observación.

Puedes filtrar por origen, tipo, nivel, estado e intervalo de tiempo y consultar el número de apariciones, la hora de recuperación y la explicación de la resolución. La resolución manual utiliza la versión más reciente del evento para evitar que varios usuarios sobrescriban sus cambios. Cuando un dispositivo o una regla se retira definitivamente, un administrador puede retirar los eventos correspondientes indicando el motivo.

Si necesitas notificaciones en la nube, configura el envío por separado mediante MQTT. Consulta los scripts y las interfaces en Referencia de Lua y Skill de alarmas.