O EventID é um inteiro, mas você está testando-o em uma comparação de string. Tente remover as aspas em torno do número no seu bloco if.
Eu tenho o nxlog em meus servidores do Windows enviando logs para o Logstash (formato JSON). Eu quero clonar os eventos de segurança para um SIEM, então eu adicionei a lógica para pegar certos IDs de evento do Windows:
Mesmoqueatag"Windows Event Log" seja aplicada (via "add_tag"), o "Evento de Segurança do Windows" nunca é adicionado, mesmo quando reviso os logs e localizo um EventID como 4624.
Para referência, aqui está o logstash.conf de texto simples:
input {tcp{port=>1514}}
filter {
if "im_msvistalog" in [message] {
json {source => "message"}
mutate {add_tag => "Windows Event Log"}
if [EventID]=="4688" or [EventID]=="592" or [EventID]=="4624" or [EventID]=="528" or [EventID]=="540" or [EventID]=="5140" or [EventID]=="560" or [EventID]==5156 or [EventID]=="7045" or [EventID]=="601" or [EventID]=="4663" or [EventID]=="567" {
mutate {add_tag => "Windows Security Event"}
}
}
}
output {stdout{codec=>rubydebug}}
Tags configuration logstash nxlog