目前分别有json格式的nginx和winsyslog二种类型数据通过beats输入logstash,如下配置可以识别json日志
但其它类型日志会报错;
如果将codec=>"json"移至output无法识别json日志,
会变成这样:
请问应该如何处理这种多种类型的beats输入情况????
input{
beats{
port=>5044
codec=>json
}
}
output{
elasticsearch{
hosts=>["127.0.0.1:9200"]
index=>"nginx-%{+YYYY.MM.dd}"
}
}
但其它类型日志会报错;
[ERROR][logstash.codecs.json ] JSON parse error, original data now in message field {:error=>#<LogStash::Json::ParserError: Unrecognized token '����失败': was expecting ('true', 'false' or 'null')
如果将codec=>"json"移至output无法识别json日志,
input{
beats{
port=>5044
}
}
output{
if[fields][doc_type]=="log_nginx" {
elasticsearch{
hosts=>["127.0.0.1:9200"]
index=>"nginx-%{+YYYY.MM.dd}"
codec => json
}
}
}
会变成这样:
请问应该如何处理这种多种类型的beats输入情况????
2 个回复
xiaoaps - 80后IT男
赞同来自:
bellengao - 博客: https://www.jianshu.com/u/e0088e3e2127
赞同来自: