【发布时间】:2019-09-04 09:34:42
【问题描述】:
我是 ELK 堆栈的新手。目前正在处理以下形式的系统日志:
Apr 26 12:20:02 localhost systemd[1]: Starting system activity accounting tool...
使用的grok模式如下:
grok {
match => {
"message" => [
"%{SYSLOGTIMESTAMP:syslog_date}\s+%{DATA:node}\s+%{DATA:component_name}\[%{NUMBER:pid}\]\:\s+%{GREEDYDATA:log_message}"]
我需要以下面的格式解析这些日志 kibana,并在 syslog_date 后面加上当前年份。
当前格式:
"log_message" => "Starting system activity accounting tool...",
"@timestamp" => August 28th 2019, 23:49:53.014,
"node" => "localhost",
"@version" => "1",
"host" => "localhost.localdomain",
"pid" => "1",
"message" => "Apr 26 12:20:02 localhost systemd[1]: Starting system activity accounting tool...",
"type" => "stdin",
"component_name" => "systemd",
"SYSLOGTIMESTAMP:syslog_date" => "Apr 26 12:20:02"
}
要求格式:
"log_message" => "Starting system activity accounting tool...",
"@timestamp" => August 28th 2019, 23:49:53.014,
"node" => "localhost",
"@version" => "1",
"host" => "localhost.localdomain",
"pid" => "1",
"message" => "Apr 26 12:20:02 localhost systemd[1]: Starting system activity accounting tool...",
"type" => "stdin",
"component_name" => "systemd",
"SYSLOGTIMESTAMP:syslog_date" => "Apr 26 2019 12:20:02"
}
有人可以帮忙吗?或任何其他可以满足这种情况的方式
【问题讨论】:
标签: elasticsearch logstash-grok logstash-configuration