Используйте sql_last_value для более чем одного файла: Logstah - PullRequest
0 голосов
/ 04 октября 2019

У меня есть файл конфигурации jdbc из logstash

statement => "SELECT * from TEST where id > :sql_last_value"

, который включает в себя вышеупомянутый запрос.

Предположим, у меня есть 2 или более файлов conf, как мне отличить мое sql_last_value друг от друга?

Могу ли я дать псевдоним, чтобы дифференцировать их? Как?

Ответы [ 2 ]

2 голосов
/ 04 октября 2019

Идея состоит в том, чтобы настроить разные значения last_run_metadata_path в каждом файле конфигурации. Например:

Файл конфигурации 1:

input {
  jdbc {
    ...
    last_run_metadata_path => "/Users/me/.logstash_jdbc_last_run1"
    ...
  }
}

Файл конфигурации 2:

input {
  jdbc {
    ...
    last_run_metadata_path => "/Users/me/.logstash_jdbc_last_run2"
    ...
  }
}
1 голос
/ 06 октября 2019

@ Ответ Val - правильный способ реализации различных файлов .logstash_jdbc_last_run.

Кроме того, я хочу дать вам несколько советов по реализации нескольких входных плагинов jdbc в одном конвейере:

Вы должны иметь в виду, что когда один входной плагин выдает некоторые ошибки (например, запрос не корректен, пользователь БД не имеет грантов и т. Д.), Конвейер весь остановится - не только соответствующийПлагин ввода. Это означает, что вы можете заблокировать ваш другой входной плагин (который может хорошо работать).

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

...