Я использую MongoDB для хранения журналов из многих приложений, и это очень хорошо работает до сих пор.
Возможно, вы захотите взглянуть на slides from a presentation on Logging Application Behavior to MongoDB, который я дал в Mongo SV и на последнем собрании MongoDB SF, чтобы узнать больше о том, почему я думаю, что это хорошо для ведения журнала, а также для информации о библиотеках для Java, Python, Ruby, PHP и C#, которые поддерживают ведение журнала в MongoDB.
Я теперь главный коммиттер на log4mongo-java, Log4J appenders для MongoDB. Поэтому, наверное, не слишком удивительно, что это то, что я использую.
Что касается целостности журнала, я полагаю, вы имеете в виду уверенность в том, что он не был изменен после его написания. Один из вариантов, который у вас есть, по крайней мере, с log4mongo-java, позволяет хранить события регистрации в базе данных, требующей аутентификации. Это в определенной степени ограничило бы число пользователей, которые могли бы добавлять, удалять или обновлять события.
Кроме того, вы можете настроить ведомое устройство репликации, которое плотно заблокировано. Частые резервные копии подчиненного устройства, по крайней мере, ограничивают время, в течение которого может быть изменен набор зарегистрированных событий.