Warnmeldungen: Event Processing Language (EPL)

Document created by RSA Information Design and Development on Apr 17, 2018
Version 1Show Document
  • View in full screen mode
 

In diesem Thema wird EPL (Event Processing Language, Ereignisverarbeitungssprache) beschrieben, eine deklarative Sprache zur Handhabung hochfrequenter, zeitbasierter Ereignisdaten. ESA verwendet EPL, eine deklarative Sprache zur Handhabung hochfrequenter, zeitbasierter Ereignisdaten. Sie dient zum Ausdruck von Filterung, Aggregation und Verknüpfung über mehrere verteilte Ereignisstreams. EPL umfasst außerdem Mustersemantik zum Ausdruck komplexer zeitlicher Zusammenhänge zwischen Ereignissen. Sie kann unter anderem folgende Funktionen ausführen:

  • Ereignisfilterung
  • Warnmeldungsunterdrückung
  • Berechnung von Prozentwerten oder Verhältnissen
  • Durchschnitt, Zähler, Minimum und Maximum für ein angegebenes Zeitfenster
  • Korrelation von Ereignissen, die in mehreren Streams eingehen
  • Korrelation von Ereignissen, die in falscher Reihenfolge eingehen
  • Ein/Aus-Fenster
  • Unterstützung von Gefolgt von und Nicht gefolgt von
  • Unterstützung von Regex-Filtern

Datenbanken können sinnvolle Daten nur als Antwort auf explizite Abfragen zurückgeben und sind nicht zur Push-Übertragung von Daten bei Änderungen geeignet. Der Entwickler muss die zeitliche Logik und die Aggregationslogik selbst implementieren. Im Gegensatz dazu bietet die EPL-Engine eine höhere Abstraktion und Intelligenz; man kann sie sich als auf dem Kopf stehende Datenbank vorstellen. Anstatt Daten zu speichern und Abfragen an den gespeicherten Daten durchzuführen, ermöglicht EPS es Anwendungen, die Abfragen zu speichern und die Daten kontinuierlich durchlaufen zu lassen. Die Antwort der EPL-Engine wird in Echtzeit gegeben, wenn Bedingungen auftreten, die den vom Benutzer definierten Abfragen entsprechen.

Erweiterte ESA-Regeln erfordern eine korrekte Groß- und Kleinschreibung, aber in der Ansicht „Investigation“ werden alle Zeichen in Kleinbuchstaben umgewandelt. Jedoch dürfen die Metadaten trotz der Darstellung in der Ansicht „Investigation“ keine Kleinbuchstaben enthalten. Um sicherzustellen, dass Sie die korrekte Groß-/Kleinschreibung verwenden, empfiehlt RSA die Verwendung der Funktion toLowerCase(). Beispiel:

@RSAAlert(oneInSeconds=0)

SELECT * FROM Event(

/* Statement: Download PDF File */

(filetype.toLowerCase() IN ( 'pdf' ) AND medium IN ( 1 ))

OR

/* Statement: Download EXE File */

(filetype.toLowerCase() IN ( 'windows_executable' , 'x86 pe' , 'windows executable' ) AND medium IN ( 1 ))

).win:time(5 Minutes)

MATCH_RECOGNIZE (

PARTITION BY ip_src

MEASURES E1 as e1_data , E2 as e2_data

PATTERN (E1+ E2)

DEFINE

E1 as (E1.filetype.toLowerCase() IN ( 'pdf' ) AND E1.medium IN ( 1 )),

E2 as (E2.filetype.toLowerCase() IN ( 'windows_executable' , 'x86 pe' , 'windows executable' ) AND E2.medium IN ( 1 ))

In der Onlinehilfe wird die Einrichtung von ESA anhand von einfachen Anweisungen illustriert; wenn Sie jedoch weitere Informationen über das Verfassen von EPL-Anweisungen benötigen, erhalten Sie auf der Website http://www.espertech.com Schulungsmaterial und Beispiele. 

Hinweis: ESA unterstützt Esper Version 5.3.0.

Next Topic:ESA-Anmerkungen
You are here
Table of Contents > Hinzufügen von Regeln zur Regelbibliothek > Hinzufügen einer erweiterten EPL-Regel > Event Processing Language (EPL)

Attachments

    Outcomes