Kafka
This module allows the Security Engine
to acquire logs from a kafka topic.
Configuration exampleβ
To monitor a kafka topic:
source: kafka
topic: my-topic
brokers:
- "localhost:9092"
timeout: 5
labels:
type: mytype
To monitor a kafka topic using SSL:
source: kafka
brokers:
- "localhost:9093"
topic: "my-topic"
timeout: 5
tls:
insecure_skip_verify: true
client_cert: /path/kafkaClient.certificate.pem
client_key: /path/kafkaClient.key
ca_cert: /path/ca.crt
labels:
type: nginx
Adding a batch configuration:
source: kafka
brokers:
- "localhost:9093"
topic: "my-topic"
timeout: 5
tls:
insecure_skip_verify: true
client_cert: /path/kafkaClient.certificate.pem
client_key: /path/kafkaClient.key
ca_cert: /path/ca.crt
labels:
type: nginx
batch:
min_bytes: 1024 # 1KB
max_bytes: 1048576 # 1MB
max_wait: 5s
queue_size: 1000
commit_interval: 1s
The reader will always start from the latest offset.
Look at the configuration parameters
to view all supported options.
Parametersβ
brokers
β
The name of the kafka brockers to connect to.
Required.
topic
β
The topic name you want to read logs from.
Required.
group_id
β
The consumer group id to use.
Cannot be used with partition
.
It is highly recommended to set this value, or crowdsec will only read logs from the 1st partition of the topic.
partition
β
Read messages from the given partition. Mostly useful for debugging.
Cannot be used with group_id
.
timeout
β
Maximum time to wait for new messages before returning an empty read.
Default: 5
tls.insecure_skip_verify
β
To disable security checks on the certificate.
Defaults to false
tls.client_cert
β
The client certificate path.
Optional, when you want to enable TLS with client certificate.
tls.client_key
β
The client key path.
Optional, when you want to enable TLS with client certificate.
tls.ca_cert
β
The CA certificate path.
Optional, when you want to enable TLS with client certificate.
batch.min_bytes
β
Minimum number of bytes to accumulate in the fetch buffer before returning results.
Default: 1
batch.max_bytes
β
Maximum number of bytes to fetch in one go.
Default: 1048576 (1MB)
batch.max_wait
β
Maximum time to wait before returning a fetch, even if batch.min_bytes
isnβt reached.
Default: 250ms
batch.queue_size
β
Maximum number of messages to buffer internally before processing.
Default: 100
batch.commit_interval
β
Time interval between automatic commits of consumer offsets.
Default: 0 (commit after every fetch)
source
β
Must be kafka
DSN and command-lineβ
This datasource does not support acquisition from the command line.