Monitoramento de comandos
Nesta página
Visão geral
Este guia mostra como usar o driver Rust para monitorar o resultado dos comandos que o driver envia para sua deployment do MongoDB.
Você pode usar informações sobre eventos de comando em seu aplicativo ou monitorar comandos para saber mais sobre como o driver os executa.
Este guia inclui as seguintes seções:
Descrições de eventos descreve os eventos de comando que o driver pode gerar.
O exemplo de inscrição de eventos fornece código de amostra que mostra como se inscrever em eventos de comando.
Documentos de exemplos de eventos fornecem amostras de cada evento de comando .
Informações adicionais fornecem links para recursos e documentação de API para os tipos e métodos mencionados neste guia.
Descrições de evento
Você pode monitorar os seguintes eventos de comando:
Nome do evento | Descrição |
---|---|
Criado quando um comando é iniciado. | |
Criado quando um comando é bem-sucedido. | |
Criado quando um comando não é bem-sucedido. |
Exemplo de monitoramento de eventos
Você pode monitorar eventos de comando atribuindo uma instância EventHandler
como o valor da opção command_event_handler
do cliente . Para construir um EventHandler
, que processa todos os eventos de comando, use o método callback()
ou async_callback()
.
O exemplo a seguir se conecta a um sistema do MongoDB , instrui o cliente a monitorar eventos de comando e imprime cada evento:
let mut client_options = ClientOptions::parse("<connection string>").await?; client_options.command_event_handler = Some(EventHandler::callback(|ev| println!("{:?}", ev))); let client = Client::with_options(client_options)?; // ... perform actions with the client to generate events
Documentos de exemplos de eventos
As seções a seguir mostram amostras de saída para cada tipo de evento de monitoramento de comando.
CommandStartedEvent
CommandStartedEvent { request_id: 12, db: "testdb", command_name: "find", connection: ..., command: ..., service_id: ... }
CommandSucceededEvent
CommandSucceededEvent { duration: ..., reply: ..., command_name: "find", request_id: 12, connection: ..., service_id: ..., }
CommandFailedEvent
CommandFailedEvent { duration: ..., command_name: "find", failure: ..., request_id: 12, connection: ..., service_id: ..., }
Informações adicionais
Para saber mais sobre como monitorar uma MongoDB deployment, consulte o artigo Como monitorar o MongoDB .
Para saber mais sobre como executar operações do MongoDB , consulte os guias deoperações CRUD .
Documentação da API
Para saber mais sobre os métodos e tipos mencionados neste guia, consulte a documentação da API abaixo: