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 a seçãoOperações CRUD do .
Documentação da API
Para saber mais sobre os métodos e tipos mencionados neste guia, consulte a documentação da API abaixo: