Logstash解析\t\n失败问题

问题:
今天配置logstash的kafka输入插件,调试Logstash读取kafka数据时,发现解析失败,查看输出到elasticsearch索引的日志信息,发现一个json体数据全被当作message信息处理,后来发现是因为kafka插件读取数据的{ codec=>json},而kafka中一条数据最后含有\t和\n。

处理办法:
读取json数据前,将数据中的\t和\n去掉,本人用python读取数据写到kafka中,再通过logstash读取数据,因此在python读取数据时便将数据中的这两个字符删掉。

variable = '{"message" : "abcdefg\r\n"}'
message_new = variable.replace('\t','').replace('\t','')

再将这条数据写入kafka中,logstash读取即可正常做json解析。

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐