filebeat 可以剖析带空格的日志行吗?
Can filebeat dissect a log line with spaces?
所以我有一个格式如下的日志行:
2020-04-15 12:16:44,936 WARN c.e.d.c.p.p.BasePooledObjectFactory [main] Caution - XML schema validation has been disabled! Validation is only available when using XML.
我正在使用 filebeat 将其直接发送到 elasticsearch,它确实这样做了,但是 log.level 没有设置,整行变成了消息。
阅读我打算使用的解剖:
processors:
- add_host_metadata: ~
- dissect:
tokenizer: "%{} %{} %{log.level} %{} [%{}] %{message}"
field: "message"
target_prefix: ""
我希望分成:
{
log.level: WARN
message: Caution - XML schema validation has been disabled! Validation is only available when using XML.
}
相反,我得到了与没有解剖时相同的输出:
{
message: 2020-04-15 12:16:44,936 WARN c.e.d.c.p.p.BasePooledObjectFactory [main] Caution - XML schema validation has been disabled! Validation is only available when using XML.
}
我刚刚开始掌握 filebeat,我已经尝试查看使它看起来足够简单的文档。但是我的解剖目前没有做任何事情。正在添加主机元数据,因此我相信正在调用处理器。
如何从日志行中获取日志级别? (最好不改变日志本身的格式)
您需要在剖析标记化中选择 message
以外的字段名称,因为这是包含原始日志消息的字段名称:
processors:
- add_host_metadata: ~
- dissect:
tokenizer: "%{} %{} %{log.level} %{} [%{}] %{msg}"
field: "message"
target_prefix: ""
所以我有一个格式如下的日志行:
2020-04-15 12:16:44,936 WARN c.e.d.c.p.p.BasePooledObjectFactory [main] Caution - XML schema validation has been disabled! Validation is only available when using XML.
我正在使用 filebeat 将其直接发送到 elasticsearch,它确实这样做了,但是 log.level 没有设置,整行变成了消息。
阅读我打算使用的解剖:
processors:
- add_host_metadata: ~
- dissect:
tokenizer: "%{} %{} %{log.level} %{} [%{}] %{message}"
field: "message"
target_prefix: ""
我希望分成:
{
log.level: WARN
message: Caution - XML schema validation has been disabled! Validation is only available when using XML.
}
相反,我得到了与没有解剖时相同的输出:
{
message: 2020-04-15 12:16:44,936 WARN c.e.d.c.p.p.BasePooledObjectFactory [main] Caution - XML schema validation has been disabled! Validation is only available when using XML.
}
我刚刚开始掌握 filebeat,我已经尝试查看使它看起来足够简单的文档。但是我的解剖目前没有做任何事情。正在添加主机元数据,因此我相信正在调用处理器。
如何从日志行中获取日志级别? (最好不改变日志本身的格式)
您需要在剖析标记化中选择 message
以外的字段名称,因为这是包含原始日志消息的字段名称:
processors:
- add_host_metadata: ~
- dissect:
tokenizer: "%{} %{} %{log.level} %{} [%{}] %{msg}"
field: "message"
target_prefix: ""