Docs Menu
Docs Home
/ /

Monitoreo de comandos

Esta guía le muestra cómo usar el controlador Go para monitorear el resultado de los comandos que el controlador envía a su implementación de MongoDB.

Puede utilizar información sobre eventos de comando en su aplicación para comprender cambios en el rendimiento de las consultas o resolver cuellos de botella.

Puede acceder a detalles sobre los eventos de comando suscribiéndose a ellos en su aplicación. El siguiente ejemplo muestra cómo suscribirse a CommandStartedEvent evento instanciando un CommandMonitor y conectándose a una implementación:

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)

Puede suscribirse a uno o más de los siguientes eventos de monitoreo de comandos:

Nombre del evento
Descripción

CommandStartedEvent

Se crea cuando se inicia un comando.

CommandSucceededEvent

Se crea cuando un comando tiene éxito.

CommandFailedEvent

Se crea cuando un comando no tiene éxito.

Las siguientes secciones muestran una salida de muestra para cada tipo de evento de monitoreo 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 obtener más información sobre cómo monitorear una implementación de MongoDB, consulte ArtículoCómo monitorear MongoDB.

Para obtener más información sobre cómo realizar operaciones en MongoDB, consulte Guíasde operaciones CRUD.

Para obtener más información sobre los métodos y tipos mencionados en esta guía, consulte la siguiente documentación de API:

Volver

Monitoreo de clústeres

En esta página