2015-04-10 2 views
0

Я создал рабочий стек ELK на Debian Wheezy и настроил Nxlog для сбора оконных журналов. Я вижу журналы в Kibana - все работает нормально, но я получаю слишком много данных и хочу отфильтровать их, удалив некоторые поля, которые мне не нужны.ELK для обработки оконных журналов

Я сделал раздел фильтра, но он не работает вообще. В чем причина? Фильтр выше

input { 
tcp { 
    type => "eventlog" 
    port => 3515 
    format => "json" 
     } 
} 
filter { 
    type => "eventlog" 
    mutate { 
      remove => { "Hostname", "Keywords", "SeverityValue", "Severity", "SourceName", "ProviderGuid" } 
      remove => { "Version", "Task", "OpcodeValue", "RecordNumber", "ProcessID", "ThreadID", "Channel" } 
      remove => { "Category", "Opcode", "SubjectUserSid", "SubjectUserName", "SubjectDomainName" } 
      remove => { "SubjectLogonId", "ObjectType", "IpPort", "AccessMask", "AccessList", "AccessReason" } 
      remove => { "EventReceivedTime", "SourceModuleName", "SourceModuleType", "@version", "type" } 
      remove => { "_index", "_type", "_id", "_score", "_source", "KeyLength", "TargetUserSid" } 
      remove => { "TargetDomainName", "TargetLogonId", "LogonType", "LogonProcessName", "AuthenticationPackageName" } 
      remove => { "LogonGuid", "TransmittedServices", "LmPackageName", "ProcessName", "ImpersonationLevel" } 
      } 
    } 
output { 
elasticsearch { 
    cluster => "wisp" 
    node_name => "io" 
    } 
} 

ответ

0

Я думаю, что вы пытаетесь удалить поля, которые не существуют в некоторых журналах. Все ли ваши журналы содержат всех фидов, которые вы пытаетесь удалить? Если нет, вы должны идентифицировать свои журналы перед удалением полей. Ваш фильтр конфигурации будет выглядеть следующим образом:

filter { 
    type => "eventlog" 
    if [somefield] == "somevalue" { 
     mutate { 
      remove => { "specificfieldtoremove1", "specificfieldtoremove2" } 
     } 
    } 
} 
+0

Проблема не в том, что ** ** удалить директиву больше не поддерживается, и все работало, когда я использовал ** remove_field ** вместо –

+0

я не заметил, что вы не использовали ** remove_field **. Но да, больше нет ** remove **. Приятно знать, что все работает нормально. – Kuaaaly

Смежные вопросы