File
The File output plugin lets you write the data received through the input plugin to file.
Configuration parameters
The plugin supports the following configuration parameters:
Path
Directory path to store files. If not set, Fluent Bit will write the files on it's own positioned directory. Available in Fluent Bit 1.4.6 and later.
none
File
Set filename to store the records. If not set, the filename will be the tag associated with the records.
none
Mkdir
Recursively create output directory if it doesn't exist. Permissions set to 0755.
none
Format
This plugin uses the following formats:
out_file
out_fileOutput time, tag, and json records. There are no configuration parameters for out_file.
tag: [time, {"key1":"value1", "key2":"value2", "key3":"value3"}]Plain
Output the records as JSON (without additional tag and timestamp attributes). There are no configuration parameters for plain format.
{"key1":"value1", "key2":"value2", "key3":"value3"}CSV
Output the records in CSV format. CSV mode supports an additional configuration parameter.
Delimiter
The character to separate each data. Accepted values: \t (or tab), (space), or , (comma). Other values are ignored and will use default silently. Default: ,
time[delimiter]"value1"[delimiter]"value2"[delimiter]"value3"LTSV
Output the records in LTSV format. LTSV mode supports an additional configuration parameter.
Delimiter
The character to separate each pair. Default: t (TAB)
Label_Delimiter
The character to separate label and the value. Default: :
field1[label_delimiter]value1[delimiter]field2[label_delimiter]value2\nTemplate
Output the records using a custom format template.
Template
The format string. Default: {time} {message}
This accepts a formatting template and fills placeholders using corresponding values in a record.
For example, if you set up the configuration like the following:
pipeline:
inputs:
- name: mem
outputs:
- name: file
match: '*'
format: template
template: '{time} used={Mem.used} free={Mem.free} total={Mem.total}'[INPUT]
Name mem
[OUTPUT]
Name file
Match *
Format template
Template {time} used={Mem.used} free={Mem.free} total={Mem.total}You will get the following output:
1564462620.000254 used=1045448 free=31760160 total=32805608Get started
You can run the plugin from the command line or through the configuration file.
Command line
From the command line you can let Fluent Bit count up a data with the following options:
fluent-bit -i cpu -o file -p path=output.txtConfiguration file
In your main configuration file append the following:
pipeline:
inputs:
- name: cpu
tag: cpu
outputs:
- name: file
match: '*'
path: output_dir[INPUT]
Name cpu
Tag cpu
[OUTPUT]
Name file
Match *
Path output_dirLast updated
Was this helpful?