out_kafka2 Output plugin writes records into Apache Kafka.
out_kafka2 is included in
td-agent. Fluentd gem users will need to install the
fluent-plugin-kafka gem using the following command:
$ fluent-gem install fluent-plugin-kafka
<match pattern>@type kafka2# list of seed brokersbrokers <broker1_host>:<broker1_port>,<broker2_host>:<broker2_port>use_event_time true# buffer settings<buffer topic>@type filepath /var/log/td-agent/buffer/tdflush_interval 3s</buffer># data type settings<format>@type json</format># topic settingstopic_key topicdefault_topic messages# producer settingsrequired_acks -1compression_codec gzip</match>
Please see the Configuration File article for the basic structure and syntax of the configuration file.
Please make sure that you have enough space in the buffer path directory. Running out of disk space is a problem frequently reported by users.
The value must be
The list of all seed brokers, with their host and port information.
The field name for target topic. If the field value is
app, this plugin write events to
In addition, this field name must be included in buffer chunk keys:
topic_key category<buffer category> # topic_key should be included in buffer chunk key# ...</buffer>
The name of default topic. (default:
This value will be used when
topic_key field is missing.
The format of each message. The available options are
ltsv, and formatter plugins.
Here is the
formatter article for more detail.
Set fluentd event time to kafka's CreateTime.
false (This means use current time.)
The number of acks required per request.
The codec the producer uses to compress messages (default:
snappy, you need to install
snappy gem by
@log_level option allows the user to set different levels of logging for each plugin.
Supported log levels:
Please see the logging article for further details.
For common output / buffer parameters, please check the following articles:
This page does not describe all the possible configurations. If you want to know about other configurations, please check the link below:
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.