Menu Docs
Página inicial do Docs
/ / /
C#/.NET
/

Monitoramento

Nesta página

  • Visão geral
  • Tipos de evento
  • Inscrevendo-se em eventos
  • Documentação da API

Nesta página, você pode aprender como configurar o monitoramento no Driver MongoDB .NET/C#. Monitoramento é o processo de coleta de informações sobre o desempenho do seu aplicativo e o uso de recursos durante a execução. Isso pode ajudá-lo a tomar decisões informadas ao projetar e depurar seu aplicação.

O driver fornece informações sobre sua aplicação emitindo eventos. Você pode se inscrever nesses eventos de driver para monitorar seu aplicação.

Observação

Registro de eventos

Esta página explica como monitorar seu aplicação no código. Para saber como registrar essas informações em um registro externo, consulte Registro de registro.

O tipo de evento que o driver emite depende da operação que está sendo executada. A tabela a seguir descreve os tipos de eventos que o driver emite:

eventType
Descrição

Eventos de comando

Eventos relacionados aos comandos do banco de dados de dados MongoDB , como find, insert, delete e count. Para saber como usar o driver .NET/C# para executar um comando de banco de dados de dados, consulte Executar um comando de banco de dados. Para obter mais informações sobre os comandos do banco de dados de dados MongoDB , consulte Comandos do banco de dados no manual do MongoDB Server .

Como medida de segurança, o driver redige o conteúdo de alguns eventos de comando. Isso protege as informações confidenciais contidas nesses eventos de comando.

Eventos de descoberta e monitoramento de servidores (SDAM)

Eventos relacionados a alterações no estado da implantação do MongoDB .

Eventos do pool de conexões

Eventos relacionados ao pool de conexões mantido pelo driver.

Para obter uma lista completa de eventos que o driver emite, consulte a documentação da API para o namespace MongoDB .Driver.Core.Events .

Para monitorar um evento, você deve assinar um método de ouvinte na sua instância do MongoClient. As etapas a seguir descrevem como assinar eventos:

  1. Crie um objeto MongoClientSettings .

  2. Defina a propriedade ClusterConfigurator no objeto MongoClientSettings como uma função lambda que aceita um objeto ClusterBuilder.

  3. Na função lambda, chame o método Subscribe<TEvent>() no objeto ClusterBuilder para cada evento que você deseja assinar. Substitua TEvent pelo tipo de evento . Passe o método do manipulador de evento como argumento para o método Subscribe<TEvent>().

O exemplo de código a seguir mostra como assinar ClusterOpenedEvent, ServerHeartbeatSucceededEvent e ConnectionPoolReadyEvent. Este exemplo pressupõe que os métodos ClusterEventHandler, HeartbeatEventHandler e ConnectionPoolEventHandler sejam definidos em outras partes do seu código.

var clientSettings = MongoClientSettings.FromConnectionString(MongoConnectionString);
clientSettings.ClusterConfigurator = clusterBuilder =>
{
clusterBuilder
.Subscribe<ClusterOpenedEvent>(ClusterEventHandler)
.Subscribe<ServerHeartbeatSucceededEvent>(HeartbeatEventHandler)
.Subscribe<ConnectionPoolReadyEvent>(ConnectionPoolEventHandler);
};

Dica

Você pode se inscrever em qualquer número de eventos, e esses eventos podem ser de diferentes tipos.

Para saber mais sobre os métodos e classes utilizados para monitorar eventos no driver, consulte a seguinte documentação da API:

Voltar

Operações em conjuntos de réplicas