最近在用filebeat想对收集到的日志进行这样的解析:如果为json的话,就将json对象中的每个子字段解析成顶级结构下的一个字段,但是发现,解析后,保存日志完整内容的message字段(也即完整的json串)消失了,最终找到如下解决方法:

用processors中的decode_json_fields处理器进行处理,它类似logstash中的filter,具体格式如下:

processors:
    - decode_json_fields:
        fields: ['message'] #要进行解析的字段
        target: "" #json内容解析到指定的字段,如果为空(“”),则解析到顶级结构下
        overwrite_keys: false #如果解析出的json结构中某个字段在原始的event(在filebeat中传输的一条数据为一个event)中也存在,是否覆盖event中该字段的值,默认值:false
        process_array: false #数组是否解码,默认值:false
        max_depth: 1 #解码深度,默认值:1

 

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 4 个月前
8c391e04 6 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐