Merge pull request 'Маршрут и секрет для резервного приёмника алертов GlitchTip' (#3484) from chore/3471-glitchtip-fallback-wiring into main
Some checks failed
Deploy / deploy-status (push) Successful in 1s
Deploy Infra Host / sync-infra-host (push) Successful in 10s
Deploy Metrics / server (push) Successful in 26s
Deploy / changes (push) Successful in 11s
Deploy Metrics / agent-apps (push) Successful in 37s
Deploy Metrics / agent-infra (push) Successful in 30s
Deploy / build-backend (push) Successful in 52s
Deploy / deploy-caddy (push) Has been skipped
Deploy / build-worker (push) Successful in 57s
Deploy / build-frontend (push) Successful in 56s
Deploy / deploy (push) Successful in 1m17s
Deploy / perimeter-smoke (push) Has been cancelled
Some checks failed
Deploy / deploy-status (push) Successful in 1s
Deploy Infra Host / sync-infra-host (push) Successful in 10s
Deploy Metrics / server (push) Successful in 26s
Deploy / changes (push) Successful in 11s
Deploy Metrics / agent-apps (push) Successful in 37s
Deploy Metrics / agent-infra (push) Successful in 30s
Deploy / build-backend (push) Successful in 52s
Deploy / deploy-caddy (push) Has been skipped
Deploy / build-worker (push) Successful in 57s
Deploy / build-frontend (push) Successful in 56s
Deploy / deploy (push) Successful in 1m17s
Deploy / perimeter-smoke (push) Has been cancelled
This commit is contained in:
commit
c53eaf7079
2 changed files with 24 additions and 2 deletions
|
|
@ -90,8 +90,9 @@ jobs:
|
|||
METRICS_TELEGRAM_TOPIC_ID: ${{ secrets.METRICS_TELEGRAM_TOPIC_ID }}
|
||||
METRICS_TELEGRAM_INFRA_TOPIC_ID: ${{ secrets.METRICS_TELEGRAM_INFRA_TOPIC_ID }}
|
||||
METRICS_TELEGRAM_ONCALL: ${{ secrets.METRICS_TELEGRAM_ONCALL }}
|
||||
ALERT_ACK_GLITCHTIP_SECRET: ${{ secrets.ALERT_ACK_GLITCHTIP_SECRET }}
|
||||
with:
|
||||
envs: METRICS_TELEGRAM_BOT_TOKEN,METRICS_TELEGRAM_CHAT_ID,METRICS_TELEGRAM_TOPIC_ID,METRICS_TELEGRAM_INFRA_TOPIC_ID,METRICS_TELEGRAM_ONCALL
|
||||
envs: METRICS_TELEGRAM_BOT_TOKEN,METRICS_TELEGRAM_CHAT_ID,METRICS_TELEGRAM_TOPIC_ID,METRICS_TELEGRAM_INFRA_TOPIC_ID,METRICS_TELEGRAM_ONCALL,ALERT_ACK_GLITCHTIP_SECRET
|
||||
host: ${{ secrets.INFRA_DEPLOY_HOST || secrets.DEPLOY_HOST }}
|
||||
username: ${{ secrets.INFRA_DEPLOY_USER || secrets.DEPLOY_USER }}
|
||||
key: ${{ secrets.INFRA_DEPLOY_SSH_KEY || secrets.DEPLOY_SSH_KEY }}
|
||||
|
|
@ -188,6 +189,14 @@ jobs:
|
|||
echo "Инфраструктура: тема ${INFRA_TOPIC_ID} по умолчанию (METRICS_TELEGRAM_INFRA_TOPIC_ID не задана)."
|
||||
fi
|
||||
|
||||
# Резервный приёмник GlitchTip (#3471) отвечает 503 на любой
|
||||
# запрос, пока секрет пуст: тихо принимать чужие алерты настежь
|
||||
# хуже, чем не принимать вовсе. Молчаливого отказа тут быть не
|
||||
# должно — деплой обязан сказать, что канал не поднялся.
|
||||
if [ -z "${ALERT_ACK_GLITCHTIP_SECRET:-}" ]; then
|
||||
echo "::warning title=Резервный канал GlitchTip выключен::ALERT_ACK_GLITCHTIP_SECRET пуст — alert-ack отвечает 503 на /glitchtip, и при падении продуктового бэкенда его ошибки доставлять будет нечем."
|
||||
fi
|
||||
|
||||
if [ -n "${METRICS_TELEGRAM_ONCALL:-}" ]; then
|
||||
echo "Клиентские инциденты: зовём ${METRICS_TELEGRAM_ONCALL} поимённо."
|
||||
else
|
||||
|
|
|
|||
|
|
@ -105,11 +105,24 @@ metrics.gendsgn.ru {
|
|||
# угадавший, — ложная отметка «принято» в чате, где сразу видно, что её
|
||||
# поставил не человек. Прав в системе токен не даёт никаких.
|
||||
#
|
||||
# Сервис отвечает только на /ack/* и /healthz; всё прочее — 404.
|
||||
# Сервис отвечает только на /ack/*, /glitchtip и /healthz; всё прочее — 404.
|
||||
handle /ack/* {
|
||||
reverse_proxy alert-ack:8080
|
||||
}
|
||||
|
||||
# Резервный приёмник алертов GlitchTip (#3471). Основной получатель —
|
||||
# продуктовый бэкенд на Selectel, то есть тот самый сервис, за которым эти
|
||||
# алерты и следят: пока он лежит, его собственные ошибки доставлять некому.
|
||||
# Этот путь живёт у другого провайдера и с чистой сетью до Telegram, поэтому
|
||||
# переживает падение Selectel целиком.
|
||||
#
|
||||
# Секрет — в значении query-параметра, а не в пути: путь сам по себе не
|
||||
# секрет, и его попадание в access-лог безопасно. Само значение вырезает
|
||||
# scrub_credentials в Alloy до записи в Loki (#3154).
|
||||
handle /glitchtip* {
|
||||
reverse_proxy alert-ack:8080
|
||||
}
|
||||
|
||||
# Вход ОДИН — собственный вход Grafana (#3078). Внешний basic_auth снят по
|
||||
# решению владельца: два запроса пароля подряд мешали работе, а Grafana имеет
|
||||
# собственную аутентификацию с ролями и `GF_USERS_ALLOW_SIGN_UP=false`.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue