Перейти к содержимому
Skip to main content

Интеграция с MongoDB

info

Перевод в процессе / Translation in progress. See русская версия.

Интеграция подключает агент к MongoDB read-only пользователем с ролью clusterMonitor, снимает serverStatus, состояние replica set и публикует метрики в Flaree.

Предварительные требования

  • MongoDB 5.0+ (standalone, replica set или sharded cluster).

  • Сетевая доступность из агента до инстанса (по умолчанию TCP 27017).

  • Read-only пользователь flaree_agent с ролью clusterMonitor:

    mongosh "mongodb://admin@mongo:27017/admin" --eval '
    db.createUser({
    user: "flaree_agent",
    pwd: "<your-password>",
    roles: [{ role: "clusterMonitor", db: "admin" }]
    });
    '

Минимальная конфигурация

integrations:
mongo:
enabled: true
uri: mongodb://flaree_agent:${MONGO_PASSWORD}@mongo:27017/admin

Полная конфигурация

integrations:
mongo:
enabled: true
uri: mongodb://flaree_agent:${MONGO_PASSWORD}@mongo:27017,mongo-2:27017,mongo-3:27017/admin?replicaSet=rs0&authSource=admin
tls: true
tls_ca: /etc/flaree/certs/mongo-ca.pem
connect_timeout: 5s
server_selection_timeout: 10s
collections:
- db: app
name: orders
interval: 60s
КлючТипПо умолчаниюОписание
uristringURI подключения, пароль берётся из ${ENV_VAR}.
tlsbooleanfalseВключает TLS при отсутствии параметра в URI.
tls_capathПуть до CA-сертификата.
connect_timeoutduration5sТаймаут установления TCP-соединения.
collections[]array[]Список коллекций для снятия count и storageSize.

Проверка работы

  1. Выполнить smoke-команду тем же пользователем, что указан в agent.yaml.
  2. Проверить, что метрика flaree_agent_mongo_up равна 1 и ping возвращает 1.
mongosh "mongodb://flaree_agent@mongo:27017/admin" --eval 'db.serverStatus().ok'
curl -sS http://127.0.0.1:9100/metrics | grep flaree_agent_mongo_up

Troubleshooting

  • Если данные не приходят, см. нет данных.
  • Частые причины: отсутствие роли clusterMonitor, неправильный authSource, недоступность вторичных узлов replica set при включённом readPreference=secondary.