Skip to main content
Version: 7.0

YAML Configuration Files

ElastiFlow now supports YAML configuration files for all binaries, with a default file location of /etc/elastiflow/<binary_name>.yml. These YAML files are compatible with all existing ElastiFlow settings, which are documented in the Configuration Reference.

Although environment variables are still available for configuring the collector, the systemd attributes file may be removed in future releases.

To use a YAML file for configuration, either place it in the default location or specify a custom location with the --config or -c flag when running the binary:

./flow-collector --config=/etc/elastiflow/flowcoll.yml

or

./flow-collector -c=/etc/elastiflow/flowcoll.yml

Implementing YAML Configuration

This example demonstrates configuring logging settings for the ElastiFlow flow-collector binary using a flowcoll.yml file:

  1. Create a new file called flowcoll.yml with the following content.

    EF_LOGGER_LEVEL: 'info'
    EF_LOGGER_ENCODING: 'json'
    EF_LOGGER_FILE_LOG_ENABLE: true
    EF_LOGGER_FILE_LOG_FILENAME: '/var/log/elastiflow/flowcoll/flowcoll.log'
    EF_LOGGER_FILE_LOG_MAX_SIZE: 100
    EF_LOGGER_FILE_LOG_MAX_AGE: 7
    EF_LOGGER_FILE_LOG_MAX_BACKUPS: 4
    EF_LOGGER_FILE_LOG_COMPRESS: false
  2. Customize the settings as needed and create additional YAML files for other ElastiFlow binaries if required.

  3. Run the flow-collector binary with the --config flag, specifying the path to your flowcoll.yml file:

    ./flow-collector --config=/path/to/flowcoll.yml

For more information on supported configurations, consult the Configuration Reference