Overview
En esta guía, puedes aprender a configurar opciones de registro para diferentes componentes de PyMongo.
PyMongo es compatible con la librería de registro nativa de Python. Puede configurar el nivel de verbosidad de registro para los siguientes componentes:
pymongo.command, que registra las operaciones de comandopymongo.connection, que registra las operaciones de gestión de conexionespymongo.serverSelectionque registra las operaciones de selección de servidores
Además de configurar estas opciones individualmente, puedes configurar el nivel global de registro estableciendo el nivel de registro en pymongo. Para aprender más sobre la biblioteca de registro nativa, véase la 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 activas el registro para el componente pymongo.command, los registros resultantes se truncarán después de 1000 bytes por defecto. Puedes configurar este límite de truncamiento estableciendo la variable de entorno MONGODB_LOG_MAX_DOCUMENT_LENGTH a la longitud deseada, como se muestra en el siguiente ejemplo:
import os os.environ["MONGODB_LOG_MAX_DOCUMENT_LENGTH"] = "2000"