Overview
En esta guía, puede aprender a configurar las opciones de registro para diferentes componentes de PyMongo.
PyMongo es compatible con la biblioteca de registro nativa de Python. Puedes configurar el nivel de detalle del registro para los siguientes componentes:
pymongo.command, que registra las operaciones de comandopymongo.connection, que registra las operaciones de gestión de conexiónpymongo.serverSelection, que registra las operaciones de selección del servidor
Además de configurar estas opciones individualmente, puede configurar el nivel de registro global estableciendo el nivel de registro en pymongo. Para obtener más información sobre la biblioteca de registro nativa, consulte Documentación de la biblioteca de registro de Python.
Ejemplos
El siguiente ejemplo establece el nivel de registro global en INFO:
import logging logging.getLogger("pymongo").setLevel(logging.INFO)
El siguiente ejemplo establece el nivel de registro en el componente pymongo.command en DEBUG:
import logging logging.getLogger("pymongo.command").setLevel(logging.DEBUG)
Los mensajes que genera el controlador tendrán el nivel de registro especificado al principio del mensaje, como se muestra en este mensaje de ejemplo DEBUG:
DEBUG:pymongo.command:{"clientId": {"$oid": "..."}, "message": "Command started", "command": "{\"insert\": \"test\", \"ordered\": true, \"lsid\": {\"id\": {\"$binary\": {\"base64\": \"...\", \"subType\": \"04\"}}}, \"$db\": \"db\", \"documents\": [{\"x\": 1, \"_id\": {\"$oid\": \"...\"}}]}", "commandName": "insert", "databaseName": "db", "requestId": ..., "operationId": ..., "driverConnectionId": 1, "serverConnectionId": 3554, "serverHost": "localhost", "serverPort": 27017}
Configuración del truncamiento
Si habilita el registro para el componente pymongo.command, los registros resultantes se truncarán después de 1000 bytes de forma predeterminada. Puede configurar este límite de truncamiento configurando la variable de entorno MONGODB_LOG_MAX_DOCUMENT_LENGTH con la longitud deseada, como se muestra en el siguiente ejemplo:
import os os.environ["MONGODB_LOG_MAX_DOCUMENT_LENGTH"] = "2000"