Versions | v1.0 (td-agent3) | v0.12 (td-agent2)

Fluentd command line option

This article describes built-in commands and its options

Table of Contents


Invoke fluentd. Here is supported options:

Usage: fluentd [options]
    -s, --setup [DIR=/etc/fluent]    install sample configuration file to the directory
    -c, --config PATH                config file path (default: /etc/fluent/fluent.conf)
        --dry-run                    Check fluentd setup is correct or not
        --show-plugin-config=PLUGIN  Show PLUGIN configuration and exit(ex: input:dummy)
    -p, --plugin DIR                 add plugin directory
    -I PATH                          add library path
    -r NAME                          load library
    -d, --daemon PIDFILE             daemonize fluent process
        --under-supervisor           run fluent worker under supervisor (this option is NOT for users)
        --no-supervisor              run fluent worker without supervisor
        --workers NUM                specify the number of workers under supervisor
        --user USER                  change user
        --group GROUP                change group
    -o, --log PATH                   log file path
        --log-rotate-age AGE         generations to keep rotated log files
        --log-rotate-size BYTES      sets the byte size to rotate log files
        --log-event-verbose          enable log events during process startup/shutdown
    -i CONFIG_STRING,                inline config which is appended to the config file on-the-fly
        --emit-error-log-interval SECONDS
                                     suppress interval seconds of emit error logs
        --suppress-repeated-stacktrace [VALUE]
                                     suppress repeated stacktrace
        --without-source             invoke a fluentd without input plugins
        --use-v1-config              Use v1 configuration format (default)
        --use-v0-config              Use v0 configuration format
    -v, --verbose                    increase verbose level (-v: debug, -vv: trace)
    -q, --quiet                      decrease verbose level (-q: warn, -qq: error)
        --suppress-config-dump       suppress config dumping when fluentd starts
    -g, --gemfile GEMFILE            Gemfile path
    -G, --gem-path GEM_INSTALL_PATH  Gemfile install path (default: $(dirname $gemfile)/vendor/bundle)

Important options

-g, –gemfile

Fluentd starts with bundler managed dependent plugins.


Fluentd starts without configuration dump. If you don’t want to show configuration in fluentd logs, e.g. don’t show private keys, this options is useful.


If set true, suppress stacktrace in fluentd logs. Since v0.12, this option is true by default.


Fluentd starts without input plugins. This option is useful for flushing buffers with no new incoming events.

-i, –inline-config

If you use fluentd on XaaS which doesn’t support persistent disks, this option is useful.


If you want to use your supervisor tools, this option avoids double supervisor.

Set via configuration file

Several options could be set via <system> directive configuration file. See configuration file article.


Send event to fluentd’s in_forward/in_unix plugin. This is useful for testing.

Usage: fluent-cat [options] <tag>
    -p, --port PORT                  fluent tcp port (default: 24224)
    -h, --host HOST                  fluent host (default:
    -u, --unix                       use unix socket instead of tcp
    -s, --socket PATH                unix socket path (default: /var/run/fluent/fluent.sock)
    -f, --format FORMAT              input format (default: json)
        --json                       same as: -f json
        --msgpack                    same as: -f msgpack
        --none                       same as: -f none
        --message-key KEY            key field for none format (default: message)


Send json message with debug.log tag to local fluentd:

% echo '{"message":"hello"}' | fluent-cat debug.log

Send to other machine:

% echo '{"message":"hello"}' | fluent-cat debug.log --host testserver --port 24225


Generate plugin’s configuration document with specified format.

Usage: /Users/cosmo/GitHub/fluentd/vendor/bundle/ruby/2.4.0/bin/fluent-plugin-config-format [options] <type> <name>

Output plugin config definitions

        type: input,output,filter,buffer,parser,formatter,storage
        name: registered plugin name

        --verbose                    Be verbose
    -c, --compact                    Compact output
    -f, --format=FORMAT              Specify format. (markdown,txt,json)
    -I PATH                          Add PATH to $LOAD_PATH
    -r NAME                          Load library
    -p, --plugin=DIR                 Add plugin directory


Generate README style document from plugin’s config parameters:

fluent-plugin-config-format output null

Generate old style output from plugin’s config parameters:

fluent-plugin-config-format -f txt output null


Generate Fluentd plugin project template. It is good for starting to Fluentd plugin development for using new API plugin. In more detail, please refer to the Generating plugin project skeleton section.

Usage: fluent-plugin-generate [options] <type> <name>

Generate a project skeleton for creating a Fluentd plugin

        type: input,output,filter,parser,formatter
        name: Your plugin name

        --[no-]license=NAME          Specify license name (default: Apache-2.0)
Last updated: 2019-03-23 23:23:09 +0000

Versions | v1.0 (td-agent3) | v0.12 (td-agent2)

If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is a open source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.