КраткоСобирайте и визуализируйте журналы сервера MongoDB (JSON-формат 4.4+) в ClickStack с помощью приёмника OTel
filelog. Включает демо-набор данных и преднастроенную панель мониторинга.Интеграция с существующей MongoDB
Предварительные требования
- Работающий экземпляр ClickStack
- Существующее самоуправляемое развертывание MongoDB (версии 4.4 или новее)
- Доступ к файлам журналов MongoDB
1
Проверьте конфигурацию логирования MongoDB
MongoDB 4.4+ по умолчанию выводит структурированные логи в формате JSON. Проверьте путь к файлу журнала:- Linux (apt/yum):
/var/log/mongodb/mongod.log - macOS (Homebrew):
/usr/local/var/log/mongodb/mongo.log - Docker: Часто выводится в stdout, но можно настроить запись в
/var/log/mongodb/mongod.log
mongod.conf:2
Создайте пользовательскую конфигурацию OTel collector для MongoDB
ClickStack позволяет расширить базовую конфигурацию OpenTelemetry Collector, смонтировав пользовательский файл конфигурации и задав переменную окружения. Пользовательская конфигурация объединяется с базовой конфигурацией, которой HyperDX управляет через OpAMP.Создайте файл с именемmongodb-monitoring.yaml со следующей конфигурацией:- В пользовательской конфигурации вы определяете только новые приёмники и конвейеры. Процессоры (
memory_limiter,transform,batch) и экспортёры (clickhouse) уже определены в базовой конфигурации ClickStack — вы просто ссылаетесь на них по имени. - В этой конфигурации используется
start_at: beginning, чтобы при запуске коллектора читать все существующие журналы. Для промышленных развертываний замените наstart_at: end, чтобы избежать повторного приёма журналов при перезапуске коллектора.
3
Настройка ClickStack для загрузки пользовательской конфигурации
Чтобы включить пользовательскую конфигурацию коллектора в существующем развертывании ClickStack, необходимо:- Смонтировать пользовательский файл конфигурации в
/etc/otelcol-contrib/custom.config.yaml - Установить переменную окружения
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yaml - Смонтировать каталог журналов MongoDB, чтобы коллектор мог их читать
- Docker Compose
- Docker Run (All-in-One Image)
Обновите конфигурацию развертывания ClickStack:
Убедитесь, что коллектор ClickStack имеет необходимые разрешения для чтения файлов журнала MongoDB. В рабочей среде используйте монтирование только для чтения (
:ro) и следуйте принципу наименьших привилегий.4
Проверьте журналы в HyperDX
После настройки войдите в HyperDX и убедитесь, что журналы поступают:Демо-набор данных
1
2
Создайте тестовую конфигурацию коллектора
Создайте файлmongodb-demo.yaml со следующей конфигурацией:3
Запустите ClickStack с демо-конфигурацией
Запустите ClickStack с демо-журналами и этой конфигурацией:Проверьте журналы в HyperDX
После запуска ClickStack:- Откройте HyperDX и войдите в свою учётную запись (возможно, сначала потребуется создать её)
- Перейдите в Search view и установите источник
Logs - Установите временной диапазон, включающий 2026-03-09 00:00:00 - 2026-03-10 00:00:00 (UTC)
Панели мониторинга и визуализация
1
конфигурацию панели мониторинга
2
Импорт преднастроенной панели мониторинга
- Откройте HyperDX и перейдите в раздел Dashboards.
- Нажмите “Import Dashboard” в правом верхнем углу в меню с многоточием.
- Загрузите файл mongodb-logs-dashboard.json и нажмите “Finish Import”.
3
Панель мониторинга будет создана со всеми преднастроенными визуализациями
Для демо-набора данных установите временной диапазон 2026-03-09 00:00:00 - 2026-03-10 00:00:00 (UTC).Устранение неполадок
Журналы не отображаются в HyperDX
Не удаётся корректно разобрать журналы
json_parser на regex_parser или обновить MongoDB до версии 4.4 и выше.
Следующие шаги
- Настройте оповещения для критически важных событий (всплески ошибок, превышение порогов длительности запросов)
- Создайте дополнительные панели мониторинга для конкретных сценариев использования (мониторинг наборов реплик, отслеживание подключений)