Согласно этому документу :
key
Optional Kafka event key. If configured, the event key must be unique and can be extracted from the event using a format string.
Но нигде не указано, как это сделать ..
У меня есть событие (сообщение json) в файле, которое нужно отправить в kafka с помощью filebeat .
"message":
{
"name": "display",
"id": "asdf-123",
"type": "User",
...
}
Я пытался получить filebeat.yml так:
filebeat.prospectors:
- input_type: log
paths:
- ...
output.kafka:
codec.format:
string: '%{[message]}'
hosts: ["localhost:9091"]
key: '%{[event.id]}'
topic: 'my-topic'
...
Здесь я пытаюсь извлечь message.id
из json, чтобы использовать его в качестве ключа записи kafka.
Это не работает ..
Мой вопрос, как мы форматируем сообщение из filebeat, чтобы включить динамические ключи ..