Registro
QiliSDK informa de lo que está haciendo mediante Loguru. El registro se configura automáticamente al importar el paquete y puede ajustarse en cualquier momento mediante configure_logging().
Por defecto solo se muestran los mensajes de nivel WARNING o superior, y se escriben en la consola (stderr).
Cambiar el nivel de detalle
Llama a configure_logging() con un level para sobrescribir el nivel de detalle:
from qilisdk import configure_logging
configure_logging(level="DEBUG")
El resto de opciones de los sinks configurados (formato, filtro, colores, …) se conservan, por lo que solo cambia el umbral. Volver a llamarla reemplaza la configuración anterior, así que prevalece la última llamada.
Registro en un archivo
Pasa un filename para copiar la salida de la consola en un archivo de texto:
from qilisdk import configure_logging
# Console and file
configure_logging(level="TRACE", filename="run.log")
# File only, no console output
configure_logging(level="TRACE", filename="run.log", stderr=False)
Niveles de registro
QiliSDK utiliza los niveles estándar de Loguru, cada uno con su propio icono:
Nivel |
Icono |
Significado |
|---|---|---|
|
🔬 |
Información muy detallada, normalmente útil solo cuando se escribe en un archivo. |
|
🐞 |
Información destinada a desarrolladores, diseñada para no inundar la terminal durante un flujo de trabajo normal. |
|
💡 |
Información destinada a usuarios, diseñada para no inundar la terminal durante un flujo de trabajo normal. |
|
✅ |
Mensajes que indican que una operación se ha completado correctamente. |
|
🚧 |
Aspectos a tener en cuenta, como que se ignore un parámetro. Este es el umbral por defecto. |
|
❌ |
Errores. Se usan pocas veces, ya que QiliSDK lanza excepciones en su lugar. |
|
💀 |
Errores críticos. Se usan pocas veces, por el mismo motivo. |
Personalizar la configuración
Los propios sinks se describen en un archivo YAML. El que viene con el paquete se encuentra junto al código fuente del módulo logging y tiene este aspecto:
sinks:
- sink: stderr
level: WARNING
format: "QiliSDK | <green>{time:YYYY-MM-DD at HH:mm:ss}</green> | <lvl>{level: <8}</> | <lvl>{level.icon} {message}</>"
filter: qilisdk
colorize: true
intercept_libraries:
- name: httpx
level: ERROR
Para usar tu propio archivo, apunta la opción QILISDK_LOGGING_CONFIG_PATH a él antes de importar QiliSDK.