# YAML configuration files

![](https://static.scarf.sh/a.png?x-pxid=864c6f0e-8977-4838-8772-84416943548e)

In Fluent Bit v3.2 and later, YAML configuration files support all of the settings and features that [classic configuration files](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/classic-mode) support, plus additional features that classic configuration files don't support, like processors.

YAML configuration files support the following top-level sections:

* `env`: Configures [environment variables](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/environment-variables-section).
* `includes`: Specifies additional YAML configuration files to [include as part of a parent file](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/includes-section).
* `service`: Configures global properties of the Fluent Bit [service](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/service-section).
* `pipeline`: Configures active [`inputs`, `filters`, and `outputs`](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/pipeline-section).
* `parsers`: Defines [custom parsers](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/parsers-section).
* `multiline_parsers`: Defines [custom multiline parsers](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/multiline-parsers-section).
* `plugins`: Defines paths for [custom plugins](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/plugins-section).
* `upstream_servers`: Defines [nodes](https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/yaml/upstream-servers-section) for output plugins.

{% hint style="info" %}
YAML configuration is used in the smoke tests for containers. An always-correct up-to-date example is here: <https://github.com/fluent/fluent-bit/blob/master/packaging/testing/smoke/container/fluent-bit.yaml>.
{% endhint %}
