filebeat吐文件到logstash乱码问题
来源:14-2 Filebeat_Demo

天才小彩笔i
2018-08-17
我把一个文件读到logstash中,使用input file插件,就没有乱码。使用input beats出现了乱码。filebeats的encoding我试过gb18030/gb2323/gbk/plain类型的。文件是gb18030的。都是乱码。问题有可能出现在哪呢?
2回答
-
天才小彩笔i
提问者
2018-08-17
filter{
mutate{
update=>{"message" => "%{message}1|" }
split=>["message","|"]
}
ruby {
code => '
file_nm = event.get("message").split(/\//).last
node_id = file_nm[4,file_nm.length].chop.chop.chop.chop
event.set("node_id", node_id)
size = event.get("message").size
event.set("size", size)
event.set("tm_smp", event.get("message[0]")[5,18])
event.set("log_id", event.get("message[0]").split(" ")[-1])
event.set("req_id", event.get("message[1]"))
if size ==8
event.set("srv_nm", event.get("message[2]"))
event.set("txn_cd", event.get("message[3]"))
event.set("cost_tm", event.get("message[4]"))
event.set("msg_cd", event.get("message[5]"))
event.set("msg_inf", event.get("message[6]"))
elsif size ==9
event.set("bus_id", event.get("message[2]"))
event.set("srv_nm", event.get("message[3]"))
event.set("txn_cd", event.get("message[4]"))
event.set("cost_tm", event.get("message[5]"))
event.set("msg_cd", event.get("message[6]"))
event.set("msg_inf", event.get("message[7]"))
elsif size <8||size>9
event.set("flg","error")
end'
remove_field => ["message"]}
date {match => ["tm_smp", "MM-dd HH:mm:ss,SSS" ]}
}
032018-08-17 -
rockybean
2018-08-17
你需要把文件传上来我看下才知道,默认 logstash 和 filebeat 都是 utf-8编码
032018-08-17
相似问题