Пробы (удалённые регионы)
Проба — это отдельный процесс gotcha, запущенный в режиме --mode=probe, который выполняет проверки мониторов из своей точки сети (другой город, дата-центр, облако) и присылает результаты в центральный сервер. Пробы нужны, чтобы отличить локальную сетевую проблему рядом с сервером Gotcha от реальной недоступности сервиса, и чтобы использовать региональный консенсус (см. Аптайм) для мониторов.
У инсталляции всегда есть встроенный локальный регион (проверки выполняются самим сервером); пробы добавляют к нему дополнительные регионы.
Управление пробами — страница /orgs/{id}/probes, доступна только владельцу/админу организации.
Регистрация пробы
- Откройте «Organization» → «Probes».
- В форме внизу страницы укажите:
- Name — понятное имя пробы (например, «Moscow probe»), до 40 символов;
- Region — идентификатор региона, который увидят мониторы при выборе регионов (например,
ru-msk), до 40 символов. Один и тот же Region можно использовать для нескольких проб — это позволяет масштабировать один регион на несколько инстансов пробы.
- Нажмите «Create probe».
Токен пробы показывается один раз, сразу после создания, прямо на странице — сохраните его сейчас, второй раз он не будет показан (в базе хранится только его хеш). Там же приводится готовая команда запуска, подставленная под адрес вашего сервера и этот токен.
Запуск пробы
Пробе не нужен доступ ни к PostgreSQL, ни к ClickHouse — только исходящий HTTP(S) к центральному серверу. Обязательны две переменные окружения:
GOTCHA_SERVER_URL— базовый адрес центрального сервера Gotcha (тот же, чтоGOTCHA_BASE_URLна сервере), напримерhttps://gotcha.example.com;GOTCHA_PROBE_TOKEN— токен, полученный на шаге регистрации.
Пример запуска через Docker (именно такая команда, с подставленными вашими значениями, показана на странице «Probes» после создания):
docker run -e GOTCHA_SERVER_URL=https://gotcha.example.com \
-e GOTCHA_PROBE_TOKEN=6e1f2a...af92 \
gotcha --mode=probe
Тот же процесс можно запустить и без Docker — собранным бинарником gotcha:
GOTCHA_SERVER_URL=https://gotcha.example.com \
GOTCHA_PROBE_TOKEN=6e1f2a...af92 \
./gotcha --mode=probe
Проба сама пришлёт свой первый отчёт в центр при старте — на странице «Probes» появится статус online и время последнего отклика. Если проба перестала отчитываться, статус сменится на offline; отозванная проба (кнопка «Revoke») помечается как revoked и её токен сразу перестаёт приниматься.
Как регионы попадают в мониторы
После того как проба хотя бы раз вышла на связь, её Region появляется в списке доступных регионов формы монитора (/projects/{id}/monitors/new и Edit) рядом со встроенным локальным регионом. Отметьте нужные регионы чекбоксами и задайте правило консенсуса (см. Аптайм) — монитор начнёт проверяться параллельно из всех выбранных точек.
Что дальше
- Аптайм и мониторы — как считается статус по нескольким регионам.
- Команды и роли — кто может управлять пробами.