SensusAgent/docs/config.md

2.9 KiB
Raw Blame History

Конфигурация

Автор: Сергей Антропов, сайт: https://devops.org.ru

Основной файл конфигурации: bin/agent/config.yaml. Путь можно переопределить переменной окружения CONFIG_PATH.

Ключевые секции:

  • mode: режим вывода (stdout | kafka | auto)
  • log_level: уровень логирования (error | info | debug)
  • kafka: параметры продюсера (если используется mode: kafka)
  • collectors: список коллекторов и их расписание

Пример полного файла config.yaml:

mode: auto          # stdout | kafka | auto
log_level: info

kafka:
  enabled: false
  brokers: ["kafka:9092"]
  topic: "sensus.metrics"
  client_id: "sensusagent"
  enable_tls: false
  timeout: "5s"

collectors:
  system:
    enabled: true
    type: exec
    key: system
    interval: "30s"
    timeout: "8s"
    exec: "./collectors/system"
    platforms: [linux]
  uptime:
    enabled: false
    type: exec
    key: uptime
    interval: "10s"
    timeout: "5s"
    exec: "./collectors/uptime"
    platforms: [darwin, linux, windows]
  macos:
    enabled: false
    type: exec
    key: macos
    interval: "30s"
    timeout: "10s"
    exec: "./collectors/macos"
    platforms: [darwin]
  sample:
    enabled: false
    type: exec
    key: sample
    interval: "30s"
    timeout: "5s"
    exec: "./collectors/sample.sh"
    platforms: [darwin, linux]
  hba:
    enabled: true
    type: exec
    key: hba
    interval: "60s"
    timeout: "10s"
    exec: "./collectors/hba"
    platforms: [linux]

Пояснения по полям коллектора:

  • enabled: включить/выключить коллектор
  • type: тип коллектора, exec — внешний бинарь/скрипт
  • key: ключ верхнего уровня в итоговом JSON
  • interval: минимальный интервал между запусками (Go duration)
  • timeout: максимальное время выполнения (Go duration)
  • exec: относительный путь к исполняемому файлу в каталоге bin/agent/collectors
  • platforms: список платформ, на которых допустим запуск (linux, darwin, windows)

Переменные окружения:

  • CONFIG_PATH — путь к config.yaml
  • LOG_LEVEL — уровень логирования (error, info, debug)

Советы по конфигурации:

  • Для тяжелых коллекторов увеличивайте interval и timeout
  • При использовании Kafka установите kafka.enabled: true и корректные brokers/topic
  • Следите, чтобы ключи key у разных коллекторов не пересекались