Files
healthlog/config.docker.toml
T
av 63bffe2865 Приём отвечает 200 до свёртки, свёртку ведёт фоновый воркер
- Очередью служит сама таблица: доставка ждёт свёртки в статусе `pending`,
  канал несёт только бит «есть работа». Переполнять нечего, падение процесса
  очередь не теряет, а подбор `pending` при старте — обычный проход воркера, а
  не отдельный код. Классификация исхода общая с пересборкой журнала.
- Исход разбора начал отражать доставку, а не обстоятельства: отмена и
  занятость базы статус не меняют (иначе конкуренция за базу выводила бы
  доставку из очереди навсегда), паника свёртки больше не валит процесс, а
  учёт доставки идёт через транзакцию с повторами.
- Длинный бюджет ответа выдан маршруту приёма, а не всему серверу:
  `write_timeout` в Go покрывает и чтение тела, и общий подъём снял бы защиту с
  остальных маршрутов.
2026-08-02 11:01:42 +03:00

32 lines
1.6 KiB
TOML

# Конфигурация локального запуска в контейнере (`task up`).
#
# ВНИМАНИЕ: этот файл коммитится. Токенов в нём быть не должно.
# Сейчас проверка токенов выключена сознательно — сервис работает только в
# доверенной локальной сети, телефон шлёт на IP хоста. Перед выездом на
# rivendell токены переезжают в отдельный несохраняемый файл, см. задачу
# беклога «Управление секретами и токенами».
[server]
addr = ":8080"
read_timeout = "5m" # экспорт истории — десятки мегабайт, бывает медленно
write_timeout = "30s" # прочих маршрутов; приём держит свой бюджет, см. config.example.toml
[auth]
write_tokens = [] # ПУСТО = проверка выключена, см. предупреждение выше
read_tokens = []
[storage]
# Пути внутри контейнера. Снаружи это каталог ./data, смонтированный в /data
# (см. docker-compose.yml): база и сырой архив переживают пересборку образа.
db_path = "/data/healthlog.db"
archive_dir = "/data/raw"
[ingest]
# Ретроактивен: тем же пределом пересборка читает тела из архива, см.
# config.example.toml.
max_body_mb = 64
[log]
level = "info"
format = "json"