Настроить несколько плагинов вывода с помощью Telegraf

У меня есть несколько плагинов ввода Telegraf для каждого приложения, и они разделены файлами app.toml. плагин вывода для всех из них настроен в глобальном файле telegraf.conf для записи в InfluxDB

Теперь я пытаюсь представить новое приложение, но записываю его показатели в локальную файловую систему, а все остальное продолжает писать в InfxDB.

Теперь, когда у меня есть новое приложение с приведенной ниже конфигурацией, выходной файл /tmp/metrics.out также собирает все метрики из других приложений.

[[inputs.app]]
    context = "/jolokia/read"
    servers = [":7090"]
    metrics =  ["/jvm_heap_usage"]

[[outputs.file]]
  ## Files to write to, "stdout" is a specially handled file.
  files = ["/tmp/metrics.out"]

Как я могу отправить все показатели в InfluxDB и только одно приложение, в которое я добавил outputs.file для отправки в локальную файловую систему?

1 ответ

Этого можно добиться, используя namepass опция в плагине вывода.

[[outputs.file]]
  files = ["stdout", "./metrics.out"]
  data_format = "influx"
  namepass = ["mem"]
[[inputs.mem]]
  # No configuration options

Имя плагина ввода также можно изменить с помощью name_override, name_prefix, или name_suffix.

[[outputs.file]]
  files = ["stdout", "./metrics.out"]
  data_format = "influx"
  namepass = ["app1"]
[[inputs.mem]]
  name_override = "app1"
Другие вопросы по тегам