Записаны ли где-нибудь сбойные команды (вставки, обновления, удаления и т. Д.) В БД Mongo?
Не думаю, что это так, но, возможно, я еще не слишком старался, чтобы найти их.
Однако вы можете зарегистрировать их в приложении, установив ClusterConfigurator на MongoClientSettings, как этот
//Build the initial settings from the MongoConnectionString
MongoClientSettings settings = MongoClientSettings.FromConnectionString("MongoConnectionString");
//Subscribe on the following events
settings.ClusterConfigurator += cb =>
{
cb.Subscribe(delegate (CommandStartedEvent startedEvent) { Console.WriteLine($"Started: {startedEvent.Command} with OpId: {startedEvent.OperationId}"); });
cb.Subscribe(delegate (CommandSucceededEvent succeededEvent) { Console.WriteLine($"Succeeded OpId: {succeededEvent.OperationId}"); });
cb.Subscribe(delegate (CommandFailedEvent failedEvent) { Console.WriteLine($"Failed OpId: {failedEvent.OperationId}"); });
};
//Builld a MongoClient with the new Settings
var client = new MongoClient(settings);
В этом примере будут записываться только те команды, которые ожидаются, и если идентификатор операции был неудачным или успешным.
Но с этого момента вы можете расширять ее, отслеживая, какая команда была запущена и на каком OperationId она выполняется.
Для завершенного примера вы можете увидеть это Суть (так как здесь слишком много кода для размещения).
Что можно назвать так:
var settings = MongoClientSettings.FromConnectionString("MongoConnectionString");
new MongoTracking().ConfigureTracking(settings);
var client = new MongoClient(settings);
Для записи это делает запись в приложении, а не в базе данных.