Ich habe ein Projekt komplexe Ereignisverarbeitung von bro
Logs durchzuführen, um irgendwelche Sicherheitsverzögerungen oder Angriffe und so zu erkennen. Ich habe erste Umfrage durchgeführt und finde heraus, dass bro verschiedene Log-Dateien erzeugt und ich WSO2 CEP
machen kann, um diese Dateien zu nehmen und schreibe Siddhi
Anfragen für die Ereignisverarbeitung. Als Event-Empfänger von WSO2 CEP xml
, json
oder text
als Nachrichtenformat, muss ich Format von bro Log-Dateien ändern, oder sie können so wie es ist arbeiten? Da ich kein Beispiel für WSO2CEP gefunden habe, das Standard-Log-Dateien als Ereignisempfänger verwendet?Bro Logs Adresse zu WSO2 CEP für die Verarbeitung
0
A
Antwort
0
Zum Glück bro Unterstützung json
Format für Protokolldateien. ich in ascii.bro
Datei einiger Standardoptionen geändert wie
# to use json instead of `tsv` for all log files. It was F bydefault
const use_json = T &redef;
# to display timestamps in a standard format
const json_timestamps:JSON::TimestampFormat = JSON::TS_ISO8601 &redef;
Und nun alle Protokolle in gewünschtem Format Ich erhalte.
1
Um dies zu erreichen, können Sie den CEP-File-Tail-Ereignisempfänger verwenden und dann RegEx verwenden, um die Details aus der Protokollnachricht zu extrahieren, ähnlich wie das Beispiel here (Beispielnummer 0022 in WSO2CEP 4.1).
Alternativ können Sie auch einen Client schreiben, um das Protokoll zu extrahieren und es als Ereignis XML
oder JSON
an CEP in jedem Transport, den Sie bevorzugen, zu senden.