fluent.conf прописано в match'е в какой эластик и по какому порту с каким индексом их слать. И он шлёт. Но вот распарсить поле log не дано ..
ок может быть и так можно, но вроде как кошерный вариант это сбор логов fluent-bit и слать их в fluentd, а дальше он уже в эластик
используем почти в точно том же ключе, логи шлет приложение и apache, логи приложения в json, apache - стандартный формат и используем такой конфиг <filter kubernetes.**> @type parser format /^"(?<request-id>[^ ]*)" (?<host>[^ ]*) [^ ]* (?<user>[^ ]*) \[(?<time>[^\]]*)\] "(?<method>\S+)(?: +(?<path>[^ ]*) +\S*)?" (?<code>[^ ]*) (?<size>[^ ]*)(?: "(?<referer>[^\"]*)" "(?<agent>[^\"]*)")?$/ time_format %d/%b/%Y:%H:%M:%S %z key_name log suppress_parse_error_log true hash_value_field apache reserve_data true </filter> <filter kubernetes.**> @type parser format json key_name log suppress_parse_error_log true reserve_data true hash_value_field app </filter> получаем оригинал в log, спаршеный json в app(он у нас не только {k:v}, но бывает и с вложенностью, тоже никаких проблем)
Обсуждают сегодня