Menu Docs

Monitoramento de comandos

Este guia mostra como usar o driver Go 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 para entender as alterações no desempenho da query ou resolver gargalos.

Você pode acessar detalhes sobre eventos de comando assinando-os em seu aplicativo. O exemplo seguinte demonstra como assinar o evento CommandStartedEvent instanciando um CommandMonitor e conectando-se a um sistema:

var eventArray []*event.CommandStartedEvent
cmdMonitor := &event.CommandMonitor{
Started: func(ctx context.Context, e *event.CommandStartedEvent) {
eventArray = append(eventArray, e)
},
}
clientOpts := options.Client().ApplyURI(uri).SetMonitor(cmdMonitor)
client, err := mongo.Connect(context.TODO(), clientOpts)

Você pode assinar um ou mais dos seguintes eventos de monitoramento de comando:

Nome do evento
Descrição
CommandStartedEvent
Criado quando um comando é iniciado.
CommandSucceededEvent
Criado quando um comando é bem-sucedido.
CommandFailedEvent
Criado quando um comando não é bem-sucedido.

As seções a seguir mostram amostras de saída para cada tipo de evento de monitoramento de comando.

*event.CommandStartedEvent
{
"Command": "...",
"DatabaseName": "...",
"CommandName": "...",
"RequestID": ...,
"ConnectionID": "...",
"ServerConnectionID": ...,
"ServerConnectionID64": ...,
"ServiceID": "..."
}
*event.CommandSucceededEvent
{
"DurationNanos": 38717583,
"Duration": 38717583,
"CommandName": "insert",
"RequestID": 13,
"ConnectionID": "...",
"ServerConnectionID": ...,
"ServerConnectionID64": ...,
"ServiceID": null,
"Reply": "..."
}
*event.CommandFailedEvent
{
"DurationNanos": 38717583,
"Duration": 38717583,
"CommandName": "insert",
"RequestID": 13,
"ConnectionID": "...",
"ServerConnectionID": ...,
"ServerConnectionID64": ...,
"ServiceID": null,
"Failure": "..."
}

Para saber mais sobre como monitorar uma implantação do MongoDB, consulte o artigo Como monitorar o MongoDB .

Para saber mais sobre como executar operações do MongoDB , consulte os guias deoperações CRUD .

Para saber mais sobre os métodos e tipos mencionados neste guia, consulte a documentação da API abaixo: