Skip to main content
Version: 2.10.2

Kafka Syslog or JSON

Use this output type to send NFO data to Kafka in Syslog or JSON format.

ParameterDescription
Topic IDKafka topic name. This a required field. Topic can be a constant string or a pattern like nfo-topic-${nfc_id}, where ${nfc_id} is substituted from the syslog or json message
Record keyThis is an optional parameter. If specified it is a pattern string with variables like ${nfc_id} or ${exp_ip} or any variable from the Syslog/JSON message
Properties file (*)Absolute path to Kafka producer properties file. For example /opt/flowintegrator/etc/kafka.properties
Report threadsOutput threads count (default is 2). This is the number of threads allocated to receive messages produced by NFO and sent to Kafka
Report intervalTime interval in seconds between report threads executions (default is 10)
nfc_id filterComma separated list of NFO Modules’ nfc_ids to be send to a Kafka broker. This is optional parameter, if not set, all messages are sent

(*) Kafka properties file is read only when NFO Server is started or when some Kafka output configuration properties are changed. So if you want to change the properties in this file, you have to restart the NFO Server or rename the file and update output configuration.

Kafka properties file example:

client.id=nfo
bootstrap.servers=host1:port1,host2:port2,…

# SASL and SSL configuration
sasl.mechanism=PLAIN
security.protocol=SASL_SSL
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required \
username="nfo" \
password="*****";
ssl.truststore.type=JKS
ssl.truststore.location=/opt/flowintegrator/etc/kafka_truststore.jks
ssl.truststore.password=*****

See https://kafka.apache.org/documentation/#producerconfigs for all available properties.