Logstash日期过滤器无法正常工作

时间:2013-05-13 14:55:11

标签: filter elasticsearch grok logstash

我有以下配置文件。但是当我运行它时,我在终端中更改了时间戳,但日志未发送到ElasticSearch。

以下是配置文件:

input {
stdin {
    type => "stdin-type"
  }
}
filter {

  grok {
    type => "stdin-type"
    patterns_dir=>["./patterns"]
    pattern => "%{PARSE_ERROR}"
    add_tag=>"%{type1},%{type2},%{slave},ERR_SYSTEM"
  }


mutate
{
    type=>"stdin-type"
    replace => ["@message", "%{message}" ]
replace =>["@timestamp","2013-05-09T05:19:16.876Z"]

}


}
output {
  stdout { debug => true debug_format => "json"}
  elasticsearch
{
}
}

在删除替换行时,会发送日志。我哪里错了?

2 个答案:

答案 0 :(得分:0)

使用详细标志运行logstash,然后检查logstash日志中是否有任何输出。在详细模式下,logstash进程通常会确认消息是否已发送到ES或为什么不是。

您的配置看起来很干净......如果详细标记没有给您任何有意义的输出,那么您应该检查您的ES设置。

答案 1 :(得分:0)

在第二个mutate代码块中尝试第二个'replace'。

mutate
{
    type=>"stdin-type"
    replace => ["@message", "%{message}" ]
}
mutate
{
    type=>"stdin-type"
    replace =>["@timestamp","2013-05-09T05:19:16.876Z"]

}