Ситуация, с которой вы столкнулись, часто связана с тем, как Graylog управляет подключениями к MongoDB и как настроен ваш кластер MongoDB.
1. **Проблема с конфигурацией MongoDB**: Когда один из экземпляров MongoDB (в данном случае primary) отключается, Graylog пытается подключиться к арбитру, но не может найти новый primary. Это может происходить из-за неправильной настройки `mongodb_uri`. Убедитесь, что вы используете правильные версию MongoDB и параметры подключения (например, `replicaSet`), чтобы Graylog мог корректно переключаться на другой primary.
Пример подключения с использованием `replicaSet`:
```
mongodb_uri = mongodb://graylog:[email protected]:27017,10.210.133.02:27017,10.210.133.03:27017/graylog?replicaSet=<имя_репликасета>
```
2. **Мониторинг и тайм-ауты**: Также стоит убедиться, что настройки тайм-аутов для подключения к MongoDB в конфигурации Graylog адекватны. Возможно, настройки времени ожидания изначально слишком малы, что не позволяет Graylog корректно обработать временные отключения.
3. **Проверка логов**: Дополнительно проверьте логи MongoDB на предмет возможных ошибок. Они могут дать вам представление о том, что происходило во время отключения.
4. **Версия Graylog**: Убедитесь, что используете актуальную версию Graylog, в которой могут быть исправлены известные ошибки, касающиеся управления подключениями к MongoDB.
5. **Отладка сетевых решений**: Проверьте, есть ли какие-либо сетевые проблемы, например, проблемы с DNS или настройки брандмауэра, которые могут препятствовать Graylog в установлении соединения с MongoDB.
Если после выполнения всех этих рекомендаций проблема сохраняется, может потребоваться дополнительная диагностика, чтобы подробнее изучить, как Graylog взаимодействует с MongoDB при сбое одного из узлов.