Настройки в файлах

Настройки «Новостного агента» — не спрятанный где-то внутренний файл, а понятная папка с текстовыми файлами рядом с проектом. Это самая практичная часть продукта: папку можно положить в систему контроля версий, скопировать на другой сервер целиком и посмотреть глазами, что настроено.

Где лежат настройки

Все настройки живут в одной папке проекта, по умолчанию — /project/apps/news. Каждое изменение — это правка одного небольшого файла. Переезд на другой сервер — это копирование папки: ничего не нужно восстанавливать из резервной копии базы.

Папку можно держать под контролем версий — и тогда видно, кто и когда поменял порог или добавил источник. Для настроек, которые меняются вместе с бизнесом, это важнее, чем кажется.

Восемь разделов

  • Настройки — общие: язык, часовой пояс, почтовый сервер, ограничения ИИ, адрес для ссылок.
  • Источники — откуда собираем: сайты, ленты, каналы, поисковые запросы.
  • Мониторы — за чем именно следим и при каком изменении бьём тревогу.
  • Правила — что делать с какими событиями.
  • Оповещения — кого и куда будить, с какими ограничениями от шума.
  • Каналы — адреса доставки: почта, Telegram, Slack и остальные.
  • Дайджесты — расписания подборок: что и когда собирать в одну сводку.
  • Публикация — цели публикации и их стиль: куда и как публиковать.

В некоторых разделах файлов может быть много — по одному на источник или правило. Это нормально: один файл — одна сущность, так проще править и обсуждать.

Подсказки прямо в папках

В каждой папке лежит короткая подсказка: все поля этого раздела, что они значат и какие значения допустимы. Рядом — готовые примеры: посмотреть, как выглядит правильно заполненный источник или правило, обычно быстрее, чем читать описание.

Отдельная документация настройщику не нужна: справочник живёт рядом с настройками и обновляется вместе с ними.

Изменения на лету

Правка подхватывается за секунды — перезапуск не нужен. Изменили расписание или порог, и продукт уже работает по-новому.

Если файл написан с ошибкой, продукт не падает: продолжает работать по последней удачной версии и показывает, что именно не так. Новостное наблюдение не встанет из-за лишней кавычки.

Проверка при записи

Когда настройки меняет агент, всё проверяется до сохранения: неверное значение отклоняется с объяснением, какого поля не хватает или что указано неправильно. Особенно это важно в связанных настройках: если правило ссылается на несуществующий канал, продукт не станет сохранять такую настройку «на потом».

Проверка идёт по тем же правилам для всех: и для источника, и для правила, и для оповещения. Опечатка не превращается в молчаливо неработающее наблюдение.

Копии и журнал

Каждая правка через агента сохраняется: остаётся прежняя версия файла и запись о том, что изменилось. Поэтому можно вернуться на шаг назад — например, если после новой настройки посыпались лишние оповещения.

Копии хранятся в папке данных, а не в папке настроек: они содержат настоящие секреты и поэтому в файловом менеджере не показываются.

Секреты

  • При чтении секреты маскируются — токены, пароли и адреса с ключами заменяются на «***». Ни в интерфейсе, ни в ответе агента настоящих секретов не видно.
  • При записи секрет можно не повторять — если отправить обратно «***», продукт оставит прежнее значение.
  • Копии настроек содержат секреты как есть — поэтому они лежат в папке данных и недоступны через файловый менеджер.

Два способа правки

  • Через агента — с проверкой, копией и журналом. Обычный путь; ничего дополнительно делать не нужно.
  • Прямо на диске — быстрее, если вам так удобнее, но без проверки, без копии и без записи в журнал. Правка подхватится на лету, однако отвечать за опечатку придётся самому.

Если правите на диске, стоит после этого попросить агента перечитать настройки и проверить их: одна команда, и вы снова в безопасном режиме.

Дальше → Управление агентом по API

← Оглавление документации