filebeat изменить данные обогащения json из других источников - PullRequest
0 голосов
/ 01 апреля 2020

Формат журнала состоит из json, закодированных в построчном формате. Каждая строка имеет вид

{data,payload:/local/path/to/file}
{data,payload:/another/file}
{data,payload:/a/different/file}

. Первоначальная идея - настроить logsta sh на использование ввода http, написать демон java (или любой другой), который получает файл, анализировать его построчно, заменять полезную нагрузку. с содержимым файла и отправить данные в logsta sh.

Я не могу изменить работу сервера, поэтому формат журнала изменить нельзя. Машины Logsta sh отличаются хостом, поэтому прямого доступа к файлам нет. Logsta sh не может смонтировать общую папку с server_host. Я не могу открыть порт отдельно для одного порта для logsta sh из-за соответствия решения, которое требует соблюдения некоторых глупых правил, которые не находятся под моим контролем.

Теперь, чтобы сэкономить несколько раз и иметь более надежное, чем заказное решение, можно настроить filebeat для обработки каждой строки json, перед отправкой в ​​logsta sh, добавив к ней

{data,payload:content_of_the_file}

1 Ответ

0 голосов
/ 03 апреля 2020

Filebeat не сможет выполнять расширенные преобразования такого рода, поскольку он предназначен только для пересылки журналов, он даже не может выполнять базовую c обработку строк, например logsta sh делает. Я предлагаю вам написать собственный скрипт, который выполняет это преобразование и записывает вывод в другой файл.

Вы можете использовать filebeat , чтобы отправить содержимое этого нового файла на logsta sh.

...