我有一个请求,将日志的时间格式转换为yyyy-MM-dd HH:mm:ss到一个很长的时间戳,但我不知道如何在logstash插件日期设置它,反正建议会感激不尽!
答案 0 :(得分:1)
date {}过滤器有两个参数:包含日期字符串的字段和另一个指定格式的字符串。默认输出是覆盖@timestamp字段,这是elasticsearch(和kibana)使用的默认文档日期。
通过将其转换为日期,您可以使用它来完成所有魔术弹性搜索日期类型的内容(例如将其与“现在'等”进行比较。
答案 1 :(得分:0)
您可以使用Ruby
插件进行转换。这是示例配置
input {
stdin {
}
}
filter {
ruby {
code => "
# yyyy-MM-dd HH:mm:ss
event['parseTime'] = Time.parse(event['message']).to_i
"
}
}
output {
stdout{codec => "rubydebug"}
}
示例输入:
2015-11-03 15:00:11
示例输出:
{
"message" => "2015-11-03 15:00:11",
"@version" => "1",
"@timestamp" => "2015-11-03T08:31:27.419Z",
"host" => "BEN_LIM",
"parseTime" => 1446534011
}
parseTime
字段采用时间戳格式。