ELK Filebeat NLog 日志处理

ELK Filebeat NLog logs processing

我根据的问题做了配置,还是不行。

日志字符串:

2021-11-19 23:55:45.1605|INFO|Microsoft.Hosting.Lifetime|Now listening on: http://0.0.0.0:7007

filebeat.yml:

processors:
  - add_host_metadata: ~
  - dissect:
     tokenizer: "%{} %{}|{%{level}|%{module}|%{msg}"
     field: "message"
     target_prefix: ""

在 kibana 中,我发现分词器不起作用:

我做错了什么?

更新 21.11.2021 #1

使用 sidharth vijayakumar 示例:

processors:
  - add_host_metadata:
     host: "unix:///host_docker/docker.sock"
  - dissect:
     tokenizer: "%{TIMESTAMP_ISO8601:time}\|%{LOGLEVEL:level}\|%{GREEDYDATA:module}\|%{GREEDYDATA:msg}"
     field: "message"
     target_prefix: ""

但是我从 filebeat 得到异常:

Exiting: error loading config file: yaml: line 11: found unknown escape character

嘿,你能尝试使用这个 grok 模式吗?

%{TIMESTAMP_ISO8601:time}\|%{LOGLEVEL:level}\|%{GREEDYDATA:module}\|%{GREEDYDATA:msg}

您将获得弹性堆栈中作为字段的条目。我认为您正面临问题,因为您的 grok 模式不匹配。请尝试让我知道。

我不知道我做了什么,但这个模式有效:

%{service:time}|%{service:level}|%{service:module}|%{service:msg}