Skip to content

Latest commit

 

History

History
288 lines (185 loc) · 9.32 KB

system-config.md

File metadata and controls

288 lines (185 loc) · 9.32 KB

System Configuration

This article describes Fluentd's system configurations for the <system> section and command-line options.

Overview

System Configuration is one way to set up system-wide configuration such as enabling RPC, multiple workers, etc.

Parameters

workers

type default version
integer 1 0.14.12

Specifies the number of workers.

restart_worker_interval

type default version
time 0 1.15.0

Specifies interval to restart workers that has stopped for some reason. By default, Fluentd immediately restarts stopped workers. You can use this option for stopping workers for a certain period of time.

root_dir

type default version
string nil 0.14.11

Specifies the root directory.

log_level

type default version
enum "info" 0.14.0

Specifies the log level e.g. trace, debug, info, warn, error, or fatal.

suppress_repeated_stacktrace

type default version
bool nil 0.14.0

Suppresses the repeated stacktrace.

emit_error_log_interval

type default version
time nil 0.14.0

Specifies the time value of the emitting of error log interval.

ignore_repeated_log_interval

type default version
time nil 1.10.2

Specify interval to ignore repeated log/stacktrace messages.

See also Logging article.

ignore_same_log_interval

type default version
time nil 1.11.3

Specify interval to ignore same log/stacktrace messages.

See also Logging article.

suppress_config_dump

type default version
bool nil 0.14.0

Suppresses the configuration dump.

log_event_verbose

type default version
bool nil 0.14.12

Logs event verbosely.

without_source

type default version
bool nil 0.14.0

Invokes fluentd without input plugins.

rpc_endpoint

type default version
string nil 0.14.0

Specifies an RPC endpoint. Refer to the RPC article for more detail.

enable_get_dump

type default version
bool nil 0.14.0

Enables to get dump.

process_name

type default version
string nil 0.14.0

Specifies the process name.

enable_msgpack_time_support

type default version
bool false 1.9.0

Allows Time object in buffer's MessagePack serde. This is useful when the log contains multiple time fields.

file_permission

type default version
string nil 0.14.0

Specifies the file permission in the octal format.

dir_permission

type default version
string nil 0.14.0

Specifies the directory permission in the octal format.

strict_config_value

type default version
bool nil 1.8.0

Parses config values strictly. Invalid numerical or boolean values are not allowed. Fluentd raises configuration error instead of replacing them with 0 or true implicitly.

disable_shared_socket

type default version
bool nil 1.12.1

Force disable the shared socket which is for listening a same port across multiple worker processes. When the shared socket is enabled (it's the default behavior), a socket is always created to enable workers to communicate with the supervisor. On Windows, it consumes a dynamic (a.k.a ephemeral) TCP port. If you don't prefer it, set this option as true. When it's disabled, you may not use plugins that listen a port such as in_forward, in_http and in_syslog.

enable_jit (experimental)

type default version
bool false 1.15.2

Enable JIT for worker processes. Internally, this configuration enables Ruby's --jit command-line option.

<log> section

format

type default version
enum text 0.14.20

Specifies the logging format e.g. text or json.

time_format

type default version
string %Y-%m-%d %H:%M:%S %z 0.14.20

Specifies time format.

rotate_age

type default version
enum or integer 7 1.13.0

Specifies daily, weekly, monthly or integer which indicates age of log rotation.

By default, Fluentd does not rotate log files. You need to specify rotate_age or rotate_size options explicitly to enable log rotation.

NOTE: When enabling log rotation on Windows, log files are separated into log-supervisor-0.log, log-0.log, ..., log-N.log where N is generation - 1 due to the system limitation. Windows does not permit delete and rename files simultaneously owned by another process.

Please see also Log Rotation Setting.

rotate_size

type default version
size 1048576 1.13.0

Specifies log file size limitation.

By default, Fluentd does not rotate log files. You need to specify rotate_age or rotate_size options explicitly to enable log rotation.

NOTE: When enabling log rotation on Windows, log files are separated into log-supervisor-0.log, log-0.log, ..., log-N.log where N is generation - 1 due to the system limitation. Windows does not permit delete and rename files simultaneously owned by another process.

Please see also Log Rotation Setting.

enable_input_metrics

type default version
bool nil 1.14.0

Specifies whether measuring input metrics should be enabled or not.

enable_size_metrics

type default version
bool nil 1.14.0

Specifies whether measuring record size metrics should be enabled or not. It can be useful for calculating flow rate on Fluentd instances.

Fluent::SystemConfig::Mixin Methods

.system_config

Returns Fluent::SystemConfig instance.

For code example, please refer to api-plugin-base's .system_config description.

.system_config_override(options = {})

Overwrites the system configuration.

This is for internal use and plugin testing.

For code example, please refer to api-plugin-base's .system_config_override description.

Command-Line Options

  • -s, --setup [DIR=/etc/fluent]: Installs sample configuration file to the directory.
  • -c, --config PATH: Specifies the configuration file path. (Default: /etc/fluent/fluent.conf)
  • --dry-run: Verifies the fluentd setup without launching.
  • --show-plugin-config=PLUGIN (obsolete): Use fluent-plugin-config-format command instead.
  • -p, --plugin DIR: Specifies the plugins' directory.
  • -I PATH: Specifies the library path.
  • -r NAME: Loads the library.
  • -d, --daemon PIDFILE: Daemonizes the fluentd process.
  • --under-supervisor: Runs the fluent worker under supervisor (this option is NOT for users).
  • --no-supervisor: Runs the fluent worker without supervisor.
  • --workers NUM: Specifies the number of workers under supervisor.
  • --user USER: Changes user.
  • --group GROUP: Changes group.
  • --umask UMASK: Specifies umask to use, in octal form. Defaults to 0.
  • -o, --log PATH: Specifies the log file path.
  • --log-rotate-age AGE: Specifies the generations to keep rotated log files.
  • --log-rotate-size BYTES: Sets the byte size to rotate log files.
  • --log-event-verbose: Enables the events logging during startup/shutdown.
  • -i CONFIG_STRING, --inline-config CONFIG_STRING: Specifies the inlined configuration which is appended to the config file on-the-fly.
  • --emit-error-log-interval SECONDS: Suppresses the interval (seconds) to emit error logs.
  • --suppress-repeated-stacktrace [VALUE]: Suppress the repeated stacktrace.
  • --without-source: Invokes fluentd without input plugins.
  • --use-v1-config: Uses v1 configuration format (default).
  • --use-v0-config: Uses v0 configuration format.
  • --strict-config-value: Parses the configuration values strictly. Invalid numerical or boolean values are rejected. Fluentd raises configuration error exceptions instead of replacing them with 0 or true implicitly.
  • -v, --verbose: Increases the verbosity level (-v: debug, -vv: trace).
  • -q, --quiet: Decreases the verbosity level (-q: warn, -qq: error).
  • --suppress-config-dump: Suppresses the configuration dumping on start.
  • -g, --gemfile GEMFILE: Specifies the Gemfile path.
  • -G, --gem-path GEM_INSTALL_PATH: Specifies the Gemfile install path. (Default: $(dirname $gemfile)/vendor/bundle)

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