Невозможно получить многострочный журнал, используя multilie.pattern в filebeat.yml, который работает на сервере Windows 2012 - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть стек ELK, работающий на сервере Ubuntu. Я хочу получить журналы от одного из моих серверов Windows, где работает filebeat. Я попробовал все, но я не могу получить журнал, который состоит из нескольких строк. Также обратите внимание, что я получаю журналы iis успешно, что означает, что filebeat работает нормально, это просто проблема с журналами с несколькими строками.

Вот мой filebeat.yml:

- type: log
  enabled: true
  paths:
    - C:\ELK-Logger\*.txt
  fields_under_root: true
  fields:
    type: errorlogs
  multiline.pattern: '^%{TIMESTAMP_ISO8601}'
  multiline.negate: false
  multiline.match: after

Вот мой журнал:

2019-01-02T14:33:30.7269760+03:00::    System.Collections.ListDictionaryInternal   Column 'ParentId' does not belong to table Table3.    at System.Data.DataRow.GetDataColumn(String columnName)
   at System.Data.DataRow.get_Item(String columnName)
   at Common.DTOs.B2BPermission.PermissionDTO.GetPermissions(DataTable dt)
   at DataProvider.DataAccess.UserDA.GetCaxPermissionsFromList(DataTable dt)-------------------------------------------------------------------------------------------

Вот мой logstash conf:

filter {
  if [type] == "errorlogs" {
    grok {
      match => { "message" => "%{TIMESTAMP_ISO8601:TIME}::    %{JAVACLASS:SYSTEM}   (?<ERROR>(.|\r|\n)*)"}
    }
  }
}
...