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

TRACE

🔬

Información muy detallada, normalmente útil solo cuando se escribe en un archivo.

DEBUG

🐞

Información destinada a desarrolladores, diseñada para no inundar la terminal durante un flujo de trabajo normal.

INFO

💡

Información destinada a usuarios, diseñada para no inundar la terminal durante un flujo de trabajo normal.

SUCCESS

✅

Mensajes que indican que una operación se ha completado correctamente.

WARNING

🚧

Aspectos a tener en cuenta, como que se ignore un parámetro. Este es el umbral por defecto.

ERROR

❌

Errores. Se usan pocas veces, ya que QiliSDK lanza excepciones en su lugar.

CRITICAL

💀

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.