Доступ к метрикам Prometheus
Панель Remnawave отдаёт метрики в формате Prometheus на отдельном порту 3001. Скрипт при установке сам генерирует логин и пароль для них и прибивает порт к localhost: снаружи сервера адрес не виден, и это защищает метрики от посторонних.
Данные подключения
Заголовок раздела «Данные подключения»Логин и пароль скрипт генерирует случайными и записывает в .env панели:
### PROMETHEUS ###### Metrics are available at http://127.0.0.1:METRICS_PORT/metricsMETRICS_USER=gjlToiPHMETRICS_PASS=VsCNutHFФайл лежит в /opt/remnawave/.env, значения подтягиваются контейнером панели автоматически.
| Переменная | Назначение | Значение у скрипта |
|---|---|---|
APP_PORT |
Порт панели | 3000 (только внутри Docker) |
METRICS_PORT |
Порт метрик | 3001, привязан к 127.0.0.1 |
METRICS_USER |
Логин для метрик | случайный |
METRICS_PASS |
Пароль для метрик | случайный |
APP_SECRET |
Ключ подписи сессий и API-токенов | случайный |
Быстрая проверка
Заголовок раздела «Быстрая проверка»На самом сервере метрики можно получить одной командой (ответ в текстовом формате Prometheus):
curl -u gjlToiPH:VsCNutHF http://127.0.0.1:3001/metrics | headС своего компьютера эндпоинт можно посмотреть через SSH-туннель, не открывая порт наружу:
ssh -L 3001:127.0.0.1:3001 root@your_server_ipПосле этого http://127.0.0.1:3001/metrics доступен и в локальном браузере.
Настройка сборщика
Заголовок раздела «Настройка сборщика»Забирать метрики нужно с самого сервера, прямо с 127.0.0.1. Конфиг для vmagent (его использует руководство по мониторингу):
- job_name: remnawave scrape_interval: 15s static_configs: - targets: ['127.0.0.1:3001'] labels: instance: "ваше_название_инстанса" basic_auth: username: "gjlToiPH" password: "VsCNutHF"Для классического Prometheus секция выглядит так же:
scrape_configs: - job_name: 'remnawave' scheme: http metrics_path: /metrics scrape_interval: 15s static_configs: - targets: ['127.0.0.1:3001'] basic_auth: username: gjlToiPH password: VsCNutHFПочему снаружи метрики не видны
Заголовок раздела «Почему снаружи метрики не видны»Скрипт публикует порт метрик только на localhost:
ports: - '127.0.0.1:3001:3001'Поэтому прямое обращение извне невозможно, и это не обходится настройкой cookie, как у страницы входа в панель: у метрик своя защита (привязка порта + basic auth). Забрать метрики снаружи можно двумя способами: агент на самом сервере (vmagent/Prometheus с remote_write) или SSH-туннель, как выше.
