Как добавить новые поля в начало события сообщения в Logstash? - PullRequest
0 голосов
/ 02 апреля 2019

Я пытаюсь найти способ добавить новые поля в начало сообщения в logstash.

Справочная информация. Я принимаю данные в формате JSON и добавляю новые поля в сообщение с помощью плагина mutate.add_field.

Однако я не могу найти способ определить положение этого нового поля. Затем сообщение выводится в файл в виде строки. Отсюда, есть другие процессы, которые выбирают этот файл и применяют регулярное выражение для извлечения необходимой информации. Чтобы упростить шаблоны регулярных выражений, я хочу поместить ключевые поля в начале сообщения.

1 Ответ

0 голосов
/ 02 апреля 2019

Вам нужно будет добавить новое поле с нужным вам порядком и удалить другие поля.

Например, если в вашем документе есть поля fieldA и fieldB и в вашем конвейере вы добавляете поля otherFieldC и otherFieldD, которые вы хотите видеть перед своим сообщением, вы должны сделать что-то вроде этого :

mutate {
  add_field =>  { 
      "all_fields" => "%{otherFieldC} %{otherFieldD} %{fieldA} %{fieldB}"
   }
   remove_field => ["fieldA","fieldB","otherFieldC","otherFieldD"]
}

Ваш вывод будет уникальным полем с информацией о ваших исходных полях плюс те, которые вы добавили в конвейер.

...