Passa al contenuto principale

Event Processing

Event Processing​

Event Processing integra il lavoro con le rulechain quando le logiche ricorrenti di allarme ed evento non devono essere ogni volta costruite manualmente come struttura di nodi dedicata.

Nell'area è possibile gestire due tipi di regole:

  • Calculate alarm rules per il calcolo e la generazione automatici di allarmi a partire dalla telemetria in ingresso
  • Enrich alarm rules per l'arricchimento di allarmi già generati con metadati aggiuntivi

Nella vista tabellare vengono visualizzate tutte le regole di Event Processing presenti. In alto a sinistra, tramite Create, viene creata una nuova regola. In alto a destra è possibile eliminare le regole selezionate.

Panoramica dell'area Event Processing

Tramite la colonna delle azioni di una regola esistente sono inoltre disponibili le seguenti funzioni:

  • visualizzare il contenuto della regola
  • riassegnare la regola ai dispositivi
  • eliminare la regola

Principio di base​

Event Processing semplifica i workflow di allarme che altrimenti dovrebbero essere costruiti manualmente.

Per le regole di allarme la logica corrisponde, nella sostanza, al seguente flusso:

La definizione tabellare della regola determina quindi quale telemetria viene monitorata, quando un allarme è attivo e quali informazioni aggiuntive vengono associate.

Creare una nuova regola​

Quando si crea una nuova regola di Event Processing si seleziona anzitutto il tipo.

Selezionare il tipo di una nuova regola di Event Processing

Sono disponibili:

  • Calculate Alarm Rules
  • Enrich Alarms

Successivamente viene caricato un file di regole e, nel passaggio seguente, la regola viene assegnata a dispositivi, elenchi di dispositivi, tipi di dispositivo o al progetto corrente.

Selezionare dispositivi o gruppi per la regola

L'assegnazione può avvenire tramite i seguenti tipi di raggruppamento:

  • Single entity
  • Entity list
  • Entity name
  • Device type
  • Current project

In questo modo una regola vale solo per i dispositivi selezionati o per il gruppo di dispositivi definito.

Calculate Alarm Rules​

Le Calculate Alarm Rules servono a definire in modo dichiarativo le condizioni di allarme a partire dai dati di telemetria, invece di modellare una rulechain dedicata per ogni allarme.

Dopo l'importazione, la tabella acquisita può essere verificata direttamente in optiCLOUD.

Regole di allarme importate nel dettaglio

Struttura del file di regole​

Il file di importazione ha una struttura tabellare. Le colonne obbligatorie sono:

ColonnaSignificato
telemetry_keyCanale di telemetria a cui viene applicata la regola
state_0Condizione o stato di destinazione per lo stato 0
state_1Condizione o stato di destinazione per lo stato 1
error_valueIndica quale stato vale come allarme (state 0 o state 1)
alarm_typeNome o tipo dell'allarme da generare
alarm_activeAttiva o disattiva la regola

Facoltativamente è possibile aggiungere un numero qualsiasi di colonne di metadati aggiuntive:

  • meta_field_<NAME> per metadati che vengono impostati indipendentemente dallo stato
  • meta_field_<NAME>_value_0 per metadati solo con state_0
  • meta_field_<NAME>_value_1 per metadati solo con state_1

I prefissi meta_field_ e i suffissi _value_0 e _value_1 sono predefiniti in modo fisso.

Calcoli della regola​

Gli stati possono contenere semplici valori fissi o espressioni. Esempi sono:

  • x == 1
  • x >= 15
  • x > 15 && x < 30
  • x * 1.25 >= 100
  • text == "myText"

In questo modo è possibile rappresentare sia valori limite numerici sia condizioni logiche più complesse, dove "x" è la variabile che rappresenta il valore di telemetria in ingresso.

Esempio​

telemetry_keystate_0state_1error_valuealarm_typealarm_activemeta_field_Description_ENmeta_field_Description_DE
Temperaturex>5x<=50Temperature_AlarmYTemperature above 5Temperature über 5
Pressurex>5x<=50Pressure_AlarmYPressure above 5Druck über 5
Humidityx>5x<=50Humidity_AlarmYHumidity above 5Feuchtigkeit über 5

L'esempio può essere scaricato qui (è necessaria la conversione in .xlsx)

Riassegnare ai dispositivi​

Le regole già create possono essere riaperte successivamente e assegnate ad altri dispositivi o gruppi.

Riassegnare una regola esistente

Ciò è utile quando la stessa definizione di regola deve valere per ulteriori dispositivi, senza dover creare un secondo file di regole.

Integrare nella Root Rule Chain​

Affinché la regola diventi attiva, deve inoltre essere integrata nella Root Rule Chain.

A tale scopo, nella Root Rule Chain si utilizza, sotto Event Rule, il nodo Complex Alarm.

Inserire il nodo Complex Alarm nella Root Rule Chain

Il nodo viene inserito dopo Save Timeseries e collegato con la relazione Success.

Collegamento da Save Timeseries a Complex Alarm

In questo modo un valore di telemetria in ingresso viene dapprima salvato e successivamente valutato in base alle regole di allarme.

Risultato sul dispositivo​

Dopo il salvataggio della Root Rule Chain, gli allarmi generati compaiono sul rispettivo dispositivo nell'area Notifications. Nella riga di ciascun allarme è possibile visualizzare l'intero contenuto dell'allarme tramite l'icona Details.

Allarmi calcolati nella vista del dispositivo

Enrich Alarms​

Le Enrich Alarms vengono utilizzate per fornire, in base al loro alarm_type, informazioni aggiuntive agli allarmi che il dispositivo invia direttamente a optiCLOUD, ad esempio indicazioni operative, messaggi di assistenza o altre misure raccomandate. Ciò è utile quando il dispositivo trasmette alla cloud, ad es., allarmi di un'unità di controllo, ma tali allarmi contengono poche informazioni. optiCLOUD può quindi arricchirli direttamente con informazioni esistenti, il che semplifica la visualizzazione nei dashboard o anche una successiva analisi degli allarmi.

Il processo di creazione è identico: selezionare il tipo, caricare il file, definire i dispositivi o i gruppi di destinazione.

Selezionare il tipo di regola Enrich alarm rules

Dopo la creazione la regola compare anch'essa nella panoramica generale di Event Processing.

Panoramica con regola di arricchimento presente

Dopo l'importazione anche la tabella acquisita può essere consultata direttamente.

Regole di arricchimento importate nel dettaglio

Struttura del file di regole​

Le colonne obbligatorie sono:

ColonnaSignificato
alarm_typeTipo di allarme che deve essere arricchito
alarm_activeAttiva o disattiva la rispettiva regola

I metadati aggiuntivi vengono aggiunti come ulteriori colonne nel formato meta_field_<NAME>.

Esempio​

alarm_typealarm_activemeta_field_servermessagemeta_field_descriptionmeta_field_remedysteps
TemperatureDeviceAlarmyTemperature Alarm on Valve 10Please look in Service Manual Page 56Reset Temperature Valve 10
PressureDeviceAlarmyPressure Alarm on Valve 10Please look in Service Manual Page 56Reset Pressure Valve 10
HumidityDeviceAlarmyHumidity Alarm on Valve 10Please look in Service Manual Page 56Reset Humidity Valve 10

L'esempio può essere scaricato qui (è necessaria la conversione in .xlsx)

Attivare la regola di arricchimento​

Per l'elaborazione nella Root Rule Chain si utilizza, sotto Event Rule, il nodo Enrich Alarm.

Il nodo viene collegato dopo Save Alarms, in modo che l'allarme venga prima salvato e successivamente integrato con i campi aggiuntivi.

Nodo Enrich Alarm nella Root Rule Chain

Risultato nei dettagli dell'allarme​

Dopo l'attivazione, le informazioni aggiuntive possono essere consultate nella vista del dispositivo, in Notification, tramite i dettagli dell'allarme.

Metadati arricchiti nei dettagli dell&#39;allarme

In questo modo è possibile visualizzare direttamente per un allarme informazioni contestuali come descrizione, messaggio del server o passaggi operativi raccomandati.

In optiCLOUD, Event Processing funge da interfaccia semplificata per due workflow di allarme ricorrenti:

  • calcolare allarmi a partire da condizioni di telemetria
  • arricchire allarmi esistenti con metadati aggiuntivi

Entrambi i tipi di regola vengono dapprima importati e assegnati ai dispositivi. Diventano attivi solo quando il relativo nodo Event Rule è stato integrato nella Root Rule Chain e salvato.