-
Notifications
You must be signed in to change notification settings - Fork 56
Kafka Output
Frank Denis edited this page Oct 5, 2015
·
4 revisions
Processed messages can be sent to a Kafka cluster, by mentioning the kafka
output type in the configuration file:
[output]
type = "kafka"
kafka_brokers = [ "172.16.205.129:9092", "172.16.205.130:9092" ]
kafka_topic = "test"
The Kafka brokers (kafka_broker
) and topic (kafka_topic
) are mandatory.
Option properties:
-
kafka_threads = <number>
: dedicate the chosen number of threads to the Kafka injection process. By default, a single thread is reserved for that purpose. -
kafka_acks = <0 | 1 | -1>
: controls whether Flowgger waits for an acknowledgment from the Kafka broker after having sent a batch. If you want to favor speed, usekafka_acks = 0
. -
kafka_timeout = <milliseconds>
: give up after Kafka has been unreachable for milliseconds. -
kafka_coalesce = <number>
: withkafka_coalesce
set to<number>
, writes to Kafka will happen in batches of<number>
records. If your traffic rate is fairly high, setting this to10000
is a reasonable ballpark figure. However, Flowgger always waits for a full batch to be buffered before sending it to Kafka. When debugging or if your incoming traffic rate is low, you should disable coalescing by settingkafka_coalesce
to1
. -
kafka_compression = "none|gzip|snappy"
: enable Kafka compression. This reduces bandwidth requirements, but is way more taxing on the CPU.