Пересмотр очереди, выводы из текста, наблюдаемость

Разведка job-queue-choice — очередь написана вручную: захват не
транзакционен, повторов и счётчика попыток нет, очереди мёртвых задач
нет. Стоит перед сменой хранилища, чтобы не переписывать захват дважды.

Цель text-insights: заголовок, пересказ и темы внешним сервисом с
OpenAI-совместимым интерфейсом. Граница паспорта сдвинута — «понимание
сказанного» было записано как то, чем проект не является; за границей
остались ответы на вопросы по записи и поиск по смыслу.

Цель service-observability в сопровождении и разведка opentelemetry-fit:
/metrics остаётся и развивается, способ решает замер.
This commit is contained in:
av
2026-08-10 21:46:08 +03:00
parent d21da8575c
commit bb973b0a68
9 changed files with 155 additions and 4 deletions
+34
View File
@@ -0,0 +1,34 @@
# 🔬 Стоит ли брать OpenTelemetry вместо голого Prometheus
- **Тип:** research
- **Категория:** Очередь
- **Зачем:** Метрик одиннадцать штук на пять счётчиков, трассировки нет вовсе: путь одной записи по конвейеру собирается только чтением логов глазами.
- **Теги:** goal:service-observability
Эндпоинт `/metrics` остаётся и развивается — это решено. Вопрос в том, чем его
развивать: дописывать счётчики в `internal/metrics` напрямую через
`client_golang` или перевести на OpenTelemetry и получить заодно трассировку.
Сегодня у записи есть путь длиной в минуты через четыре внешних сервиса и три
воркера, и связать его звенья можно только по `job_id` в логах. Трассировка
отвечает на это прямо, но приносит коллектор — процесс, которого в выкладке нет.
## Вопрос
Даёт ли OpenTelemetry на этом проекте больше, чем стоит: коллектор в выкладке,
переписанные метрики и словарь имён, — или дешевле остаться на `client_golang` и
дописать недостающие счётчики.
## Куда ляжет ответ
`docs/research/opentelemetry.md` — с числами: сколько зависимостей приносит,
что появляется в выкладке, сколько метрик переписывается. Решение и причина
отказа — в `docs/adr/`, если берём: переход на другой словарь метрик ломает
собранные ряды и обратной правкой не откатывается.
## Рамки
Метрики Prometheus и путь `/metrics` из ответа не исчезают ни при каком исходе:
OpenTelemetry рассматривается как источник тех же метрик, а не как замена
эндпоинта. Своего хранилища метрик и своих панелей не поднимаем — это отдельная
работа.