Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Habilitar el registro de consultas

En esta guía, puedes aprender cómo activar el registro de consultas en Laravel MongoDB. El registro de queries puede ayudarte a depurar tus queries y supervisar las interacciones con la base de datos.

Para ejecutar los ejemplos de código de esta guía, complete el Configuración rápida tutorial. Este tutorial proporciona instrucciones para configurar una instancia de MongoDB Atlas con datos de muestra y crear los siguientes archivos en su aplicación web Laravel:

  • Movie.php archivo, que contiene un modelo Movie para representar documentos en la colección movies

  • MovieController.php archivo, que contiene una función show() para ejecutar operaciones de base de datos

  • browse_movies.blade.php archivo, que contiene código HTML para mostrar los resultados de las operaciones de la base de datos

Las siguientes secciones describen cómo editar los archivos de tu aplicación Laravel para ejecutar los ejemplos de código de operaciones de búsqueda y ver la salida esperada.

Para habilitar registros en una conexión, puedes usar el método enableQueryLog() en la fachada DB. Este método activa el registro de comandos de MongoDB en cualquier consulta que realice sobre la conexión de la base de datos.

Tras habilitar el registro de consultas, todas las consultas que realice se almacenarán en memoria. Para recuperar los registros, utilice uno de los siguientes métodos:

  • getQueryLog(): Retorna un registro de queries de MongoDB

  • getRawQueryLog()Devuelve un registro de las consultas brutas de MongoDB

El siguiente ejemplo permite el registro de consultas, realiza algunas consultas y luego imprime el registro de consultas:

DB::connection('mongodb')->enableQueryLog();
Movie::where('title', 'Carrie')->get();
Movie::where('year', '<', 2005)->get();
Movie::where('imdb.rating', '>', 8.5)->get();
$logs = DB::connection('mongodb')->getQueryLog();
foreach ($logs as $log) {
echo json_encode($log, JSON_PRETTY_PRINT) . PHP_EOL;
}
{
"query": "{ \"find\" : \"movies\", \"filter\" : { \"title\" : \"Carrie\" } }",
"bindings": [],
"time": 29476
}
{
"query": "{ \"find\" : \"movies\", \"filter\" : { \"year\" : { \"$lt\" : { \"$numberInt\" : \"2005\" } } } }",
"bindings": [],
"time": 29861
}
{
"query": "{ \"find\" : \"movies\", \"filter\" : { \"imdb.rating\" : { \"$gt\" : { \"$numberDouble\" : \"8.5\" } } } }",
"bindings": [],
"time": 27251
}

Para obtener más información sobre cómo conectarse a MongoDB, consulte la Guía de conexión.

Para aprender cómo recuperar datos en función de criterios de filtro, consulta la guía Recuperar datos.

Volver

preferencia de lectura

En esta página