Docs Menu
Docs Home
/ /
Misceláneo

$comment

$comment

El operador del query $comment asocia un comentario a cualquier expresión que utilice un predicado de query.

Porque los comentarios se propagan a la profile registro, agregar un comentario puede hacer que los datos de su perfil sean más fáciles de interpretar y rastrear.

El operador $comment tiene la forma:

db.collection.find( { <query>, $comment: <comment> } )

Puede usar$commentcon cualquier expresión que tome un predicado de consulta, como el predicado de consulta endb.collection.updateOne()o en la etapa$matchdel flujo de trabajo de agregación. Para ver un ejemplo, consulte "Adjuntar un comentario a una expresión de agregación".

El siguiente ejemplo agrega $comment una operación find() a una operación:

db.records.find(
{
x: { $mod: [ 2, 0 ] },
$comment: "Find even values."
}
)

Si el generador de perfiles de base de datos está habilitado, la siguiente salida muestra el comentario en la system.profile colección:

{
"op" : "query",
"ns" : "test.records",
"command" : {
"find" : "records",
"filter" : {
"x" : {
"$mod" : [
2,
0
]
},
"$comment" : "Find even values."
},
"comment" : "Find even values.",
...

Los comentarios también aparecen en el registro de MongoDB si el nivel del perfilador de base de datos está establecido en 2 y slowms está establecido en 0ms. Este comando establece estos dos db.setProfilingLevel() parámetros:

db.setProfilingLevel(2, 0)

El comentario del db.records.find() ejemplo anterior aparece de la siguiente manera en el registro de MongoDB:

{"t":{"$date":"2020-09-17T11:32:20.415-07:00"},"s":"I",
"c":"COMMAND", "id":51803, "ctx":"conn7","msg":"Slow query",
"attr":{"type":"command","ns":"test.records","appName":"MongoDB
Shell","command":{"find":"records","filter":{"x":{"$mod":[2.0,0.0]},
"$comment":"Find even values."},"comment":"Find even values."
...

Puede utilizar con cualquier expresión que tome un predicado de $comment consulta.

El siguiente ejemplo utiliza el operador $comment $match en la etapa para aclarar la operación:

db.records.aggregate( [
{ $match: { x: { $gt: 0 }, $comment: "Don't allow negative inputs." } },
{ $group : { _id: { $mod: [ "$x", 2 ] }, total: { $sum: "$x" } } }
] )

Tip

Volver

Misceláneo

En esta página