Собирает журналы только с определенным полем с помощью fluent-bit

#fluentd #fluent-bit

#fluentd #fluent-bit

Вопрос:

Например, мои журналы выглядят так:

 {
 "fieldA":"logA",
 "foo":"bar"
}
  

или

 {
 "fieldA":"logA",
 "fieldB":"logB"
}
  

В моем случае я хочу собирать только журналы с полем «foo», отбрасывая другие журналы.

Комментарии:

1. Взгляните на grep плагин filter: docs. fluentd.org/filter/grep .

2. Если вы хотите отфильтровать более сложные записи JSON с вложенными парами, вы можете взглянуть на github.com/iamAzeem/fluent-plugin-json . Он использует синтаксис указателя JSON. Смотрите пример: github.com/iamAzeem/fluent-plugin-json#example .

3. fluent-bit grep: документы. fluentbit.io/manual/pipeline/filters/grep

Ответ №1:

Используйте grep плагин фильтра, чтобы включать только события с foo полем:

 [FILTER]
    Name   grep
    Match  *
    Regex  foo .*