fluent-plugin-json-nest2flat, a plugin for Fluentd
Overview
json_nest2flat is a fluentd output plugin.I will convert data into a flat data structure of JSON nested.
ex. "foo":2, "data":{"name":"taro", "age":18, "height":175} -> ex. "foo":2, "name":"taro", "age":18, "height":175
I am writing in my blog, such as the history of release
Configuration
ex1.
<match example>
type json_nest2flat
tag json_nest2flat.finished
json_keys data1,data2,data3
</match>
in
example: "name":"taro","age":"17","data1":{"a":"b","data2":"c":"d","data3":"e":"f"}
out
json_nest2flat.finished: "name":"taro","age":"17","a":"b","c":"d","e":"f"
ex2.
<match example>
type json_nest2flat
add_tag_prefix json_nest2flat
json_keys data1,data2,data3
</match>
in
example: "name":"taro","age":"17","data1":{"a":"b","data2":"c":"d","data3":"e":"f"}
out
json_nest2flat.example: "name":"taro","age":"17","a":"b","c":"d","e":"f"
ex3.
<match example>
type json_nest2flat
add_tag_prefix json_nest2flat
json_keys data1
ignore_item_keys {"data1":["b","c","d"]}
</match>
in
example: "name":"taro","age":"17","data1":{"a":"b","b":"c","c":"d","d":"e","e":"f"}
out
json_nest2flat.example: "name":"taro","age":"17","a":"b","e":"f"
Parameters
tag
The output tag. add_tag_prefix or tag is required.
add_tag_prefix
To add a prefix to the tag that matched. Tag, is enabled if both are specified tag and if, add_tag_prefix is ignored.
json_keys
It is the key that you want to convert to a flat structure from JSON nested. It is more than one can be specified in a comma-separated.
ignore_item_keys
You specify the item that you want to ignore the key that is specified in the "json_keys". The format is JSON format. Please refer to the section of "Configuration" example of setting.
TODO
Currently, nested structure of two or more layers will be unexpected.
Copyright
Copyright:: Copyright (c) 2013- fukuiretu License:: Apache License, Version 2.0