Python tiene un módulo incorporado llamado Inicio sesión Para obtener la información de registro para cualquier aplicación de Python. Es un módulo muy útil para el programador de Python novato o experimentado para imprimir el mensaje de estado en la transmisión de salida o en un archivo. La mayoría de las bibliotecas de Python de terceros usan este módulo para generar información de registro para la aplicación Python. La forma en que puede usar este módulo se muestra en este artículo utilizando 25 ejemplos simples de registro de Python.
Lista de ejemplos de registro:
getLogger () La función se usa para crear un objeto Logger. Esta función se puede llamar con el nombre del registrador o sin un nombre de logger. El nombre de registrador predeterminado es raíz. En el siguiente ejemplo, el objeto logger se crea con un nombre de registrador y sin un nombre de registrador utilizando getLogger (). Aquí, se imprimirán tres mensajes de advertencia. La raíz se imprimirá como nombre del registrador para el primer y segundo mensaje de advertencia. El tercer mensaje de advertencia se imprimirá con el nombre del registrador asignado en la función getLogger ().
Ejemplo 1.py
#módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo1.pyProducción:
El nombre de registrador predeterminado es 'root' y cuando el objeto de registrador se crea sin ningún nombre, el registrador nombrado también es 'root'. Entonces, la siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Usando BasicConfig ()
BasicConfig () La función se utiliza para configurar las opciones de registro del registrador raíz. Esta función se pueden hacer diferentes tipos de configuración básica. formato, nivel, nombre de archivo, etc. son los argumentos más utilizados de esta función. formato se usa para formatear la salida del mensaje de registro. nivel se usa para establecer el nivel de registro. Nombre del archivo se usa para enviar la salida del mensaje de registro a un archivo en lugar de la consola. Los usos de formato y nivel Los argumentos se muestran en el siguiente ejemplo.
ejemplo2.py
#Módulo de importaciónEjecute el script desde el terminal.
$ Python Ejemplo2.pyProducción:
Aquí el mensaje está establecido en el formato argumento y el registro nivel se establece en DEPURAR. El siguiente mensaje de depuración se imprimirá como salida después de ejecutar el script.
Ve arriba
Usando setLevel ()
setLevel () La función se usa para establecer el nivel de registro. Se pueden establecer seis niveles por esta función. Estos son Debug (10), Info (20), Advertencia (30), Error (40), Crítico (50) y Notset (0). El nivel predeterminado se establece en Notset cuando se crea cualquier objeto Logger y los mensajes se procesan en función de Root Logger si no se define el nombre del registrador. El registrador raíz procesa mensajes para advertencia, error y nivel crítico de forma predeterminada. Cómo puede cambiar el nivel de registrador actual utilizando setLevel () la función se muestra en el siguiente ejemplo. Aquí, los mensajes de depuración y advertencia se imprimen antes y después de configurar el nivel de registro en el script.
ejemplo3.py
#módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo3.pyProducción:
El primer mensaje de depuración del script no se imprimirá para el nivel de registrador predeterminado y el segundo mensaje de depuración se imprimirá para configurar el nivel del registrador en depurar. Aparecerá la siguiente salida
Después de ejecutar el script.
Ve arriba
Usar getEffectivElevel ()
GetEffectivElevel () La función se utiliza para recuperar el valor de nivel de registro actual. Si el nivel de registro actual se establece en NotSet, el objeto Logger buscará el nivel de registro del registrador raíz. Si no se encuentra nada para Root Logger, entonces se devolverá el valor de nivel de registro de Notset. Cómo puedes usar GetEffectivElevel () Para leer el nivel de registro actual se muestra en el siguiente ejemplo. Aquí, esta función se llama antes y después de configurar el nivel de registro.
Ejemplo4.py
#Módulo de importaciónEjecute el script desde el terminal.
$ Python Ejemplo4.pyProducción:
La siguiente salida aparecerá después de ejecutar el script. La salida muestra que el nivel de registro predeterminado es la advertencia (30) y el nivel de registro es depurado (10) después de configurar el nivel.
Ve arriba
Uso de isenabledFor ()
isEnabledFor () La función se usa para verificar que cualquier nivel de registro esté habilitado o deshabilitado actualmente. El siguiente ejemplo verificará primero el nivel de información está habilitado o no. La información y los niveles de depuración no están habilitados de forma predeterminada. Entonces la salida de isenablefor () la función será falsa. A continuación, el nivel de registro se establece en información y isEnabledFor () devolverá verdadero para la última declaración.
ejemplo5.py
#Módulo de importaciónEjecute el script desde el terminal.
$ Python Ejemplo5.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Usando debug ()
depurar() La función se utiliza para imprimir información detallada después de diagnosticar problemas del script. El valor numérico de DEPURAR El nivel es 10 y tienes que establecer este nivel para hacer depurar() función activa. El uso de esta función se muestra mediante un script simple en el siguiente ejemplo. Aquí, el nivel de registro está configurado para depurar para imprimir el mensaje de depuración. La función check_even () se define para verificar que el número de entrada es uniforme o impar. Si el número ni siquiera es, la función emitirá un mensaje de depuración de lo contrario ninguno.
ejemplo6.py
#módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo6.pyProducción:
El script se ejecuta para tiempos con un número par un número impar. Cuando se toma 55 como entrada, luego imprime el mensaje de depuración y cuando se toma 12 como entrada, no se pasa ningún mensaje.
Ve arriba
Usando info ()
info () La función se utiliza para proporcionar un mensaje exitoso o general al usuario para confirmar que el código funciona correctamente. El valor numérico de Información El nivel es 20 y debe establecer este nivel antes de usar info () función. El uso de esta función se muestra en el siguiente ejemplo. Aquí, se asignan dos valores numéricos en dos variables X y Y. Una función personalizada 'sumase declara que calcula la suma de X y Y. info () La función se usa para llamar a la función y al resultado de suma de impresión.
ejemplo7.py
#módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo7.pyProducción:
Aquí, no se crea ningún objeto Logger. Entonces, el registrador predeterminado es root y la suma de x e y es 50. La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Usando advertencia ()
advertencia() La función se usa cuando ocurre un problema inesperado o para advertir al usuario para el problema futuro. El valor numérico del nivel de advertencia es 30. La función de advertencia () funciona para el registrador predeterminado. El uso de esta función se muestra en el siguiente ejemplo. Aquí, el nivel de registro está configurado para advertir al comienzo del script. Este script calculará el área del círculo en función del valor de radio tomado. Si el valor de radio es cero, entonces un mensaje de advertencia imprimirá de otra manera el área del círculo se imprimirá.
ejemplo8.py
#módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo8.pyProducción:
El script se ejecuta dos veces en la salida con los valores de radio, 0 y 4. El mensaje de advertencia se imprime cuando el valor de radio es 0 y el valor de área se imprime cuando el radio es 4.
Ve arriba
Usando Error ()
error() La función se usa cuando existe un problema grave en el script. El nivel numérico de error es 40. error() la función funciona para el registrador predeterminado. El siguiente ejemplo muestra el uso de la error() función. La función del script es tomar un nombre de archivo existente como entrada e imprimir el contenido del archivo. sistema operativo.camino El módulo se usa para leer cualquier archivo en Python. Entonces, este módulo se importa primero. Aquí, si el nombre de archivo que tomará como entrada no existe en el sistema, entonces el mensaje de error se imprimirá; de lo contrario, se imprimirá el contenido del archivo.
ejemplo9.py
#IMPORT OS.módulo de rutaEjecute el script desde el terminal.
$ Python Ejemplo9.pyProducción:
El script se ejecuta dos veces en la siguiente salida. Por primera vez, el nombre de archivo que se da como entrada no existe en el sistema y se imprime el mensaje de error. Por segunda vez, el nombre de archivo que se toma como la entrada existe en el sistema y se imprime el contenido del archivo.
Ve arriba
Usando crítico ()
La función crítica () también se usa para indicar el problema grave que puede detener la ejecución del script. El nivel de registro de crítico es 50. crítico() la función funciona para el registrador predeterminado. El uso de esta función se muestra en el siguiente ejemplo. Aquí, se tomarán dos valores de entrada del usuario como dividendo y divisor. Si el valor del divisor es 0, entonces se producirá un error crítico y se imprimirá un mensaje crítico.
Ejemplo10.py
#módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo10.pyProducción:
El script se ejecuta dos veces en la siguiente salida. Cuando se toman 78 y 0 como entrada, entonces se imprime el mensaje de error crítico. Cuando 24 y 2 se toman como entrada, entonces 12.0 se imprime como salida.
producción.
Ve arriba
Registro a un archivo
La salida del registro se muestra en la consola por configuración predeterminada. Pero puede almacenar la salida del registro en un archivo utilizando el argumento del nombre de archivo de la función BasicConfig (). La forma en que puede almacenar la información de registro en un archivo se muestra en el ejemplo. Aquí, 'mi.registro'se asigna como nombre de archivo y se almacena en el argumento del nombre de archivo de BasicConfig (). El nivel de registro está configurado para depurar. Después de ejecutar el script, 'mi.registro' se creará el archivo y los mensajes de registro se almacenarán en el archivo.
ejemplo11.py
#Módulo de registro de importaciónEjecute el script y vea el contenido de mi.registro Archivo desde el terminal.
$ Python Ejemplo11.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de la variable en el registro
Cualquier datos del script se puede agregar al registro utilizando la variable en Python. Este ejemplo muestra cómo puede pasar cualquier variable de Python en el mensaje de registro. Este siguiente script tomará dos entradas de cadena de los usuarios como nombre de usuario y contraseña. Si los valores de entrada coinciden con los valores mencionados en el script, se imprimirá un mensaje de registro de errores pasado con el valor de errmsg variable. Si los valores no coinciden, se imprimirá un mensaje de registro de información con el valor de la misma variable.
ejemplo12.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo12.pyProducción:
El script se ejecuta dos veces con los datos válidos y los datos no válidos en la siguiente salida. Cuando 'administración' y 'secreto'se pasan como nombre de usuario y contraseña que son datos no válidos, entonces almacenó un mensaje de falla en la variable, errmsg. Cuando 'fahmida ' y 'secreto' se pasan como nombre de usuario y contraseña como entrada que son datos válidos, entonces se almacena un mensaje de éxito en la variable, errmsg. El valor de errmsg se imprime con el mensaje de error de registro para la falla y con el mensaje de información de registro para el éxito.
Ve arriba
Usando Exception ()
excepción() La función se usa en el registro si el script de python contiene código de controlador de excepción. Funciona como la función Error () del registro. La diferencia es que excepción() La función muestra la traza de pila junto con su salida. El uso de esta función se muestra en el siguiente ejemplo. El siguiente script tomará un valor numérico como entrada y aumentará una excepción si el valor de entrada es negativo. Aquí, excepción() la función imprimirá la captura de mensajes de excepción por excepción.
Ejemplo13-py
#módulo de registro de importaciónEjecute el script desde el terminal.
$ Python Ejemplo13.pyProducción:
Cuando el script se ejecuta con el valor -89 que es negativo, entonces ha lanzado una excepción e imprimió el rastreo de pila y la salida de excepción. Cuando el script se ejecuta con el valor 13 que es positivo, entonces no se imprime ningún mensaje.
Ve arriba
Creación de controladores
Las entradas de registro se pueden manejar de diferentes maneras utilizando diferentes manejadores. Los manejadores más utilizados para el registro son Frasehandler y Streamhandler. Frasehandler se usa para enviar las entradas de registro a un archivo y Streamhandler se usa para enviar las entradas de registro a la consola. Los usos de estos manejadores se muestran en el siguiente ejemplo. En este guión, el nivel de depuración está configurado para Frasehandler El nivel de objeto y de información está configurado para Streamhandler objeto. Para esto, los mensajes de depuración e información se almacenarán en el Dato de registro.registro El mensaje de archivo e información se imprimirá en la consola.
ejemplo14.py
#módulo de ImportEjecute el script y vea el contenido de 'logdata.Registro 'Archivo desde el terminal.
$ Python Ejemplo14.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Usando formatter ()
Formatter () La función se utiliza para configurar el contenido y la estructura de los datos de registro. Cómo puedes usar Formatter () función para configurar los datos de registro de Frasehandler El objeto se muestra en el siguiente ejemplo. Aquí, Formatter () se usa para formatear los datos de registro con tiempo de creación, nombre del registrador y mensaje de registro. mylog.registro El archivo se creará después de ejecutar el script y los mensajes de registro formateados se almacenarán en el archivo.
ejemplo15.py
#módulo de ImportEjecute el script y vea el contenido de 'logdata.Registro 'Archivo desde el terminal.
$ Python Ejemplo15.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Usando logrecord.getMessage ()
Cuando el Logger registra algo, entonces el objeto LoGRECOCD se crea automáticamente. La función makerecord () se puede usar para crear un objeto logecord manualmente. El objeto de logrecord contiene muchos atributos y getMessage () función. Cuando el objeto logecord se crea manualmente entonces getMessage () Devuelve el mensaje del objeto Logrecord basado en los argumentos aprobados por el usuario. El siguiente ejemplo muestra el uso de getMessage () función.
Ejemplo16.py
#módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo16.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de los atributos de Logrecord - Args
argumentos Atributo almacena los argumentos pasados al objeto Logrecord. Los valores de argumentos se fusionan con machista atributo para producir el valor de mensaje atributo cuando el objeto logrecord se crea automáticamente. El valor del atributo de argumentos se puede leer creando un objeto de logrecord manualmente. En el siguiente ejemplo, un objeto de logrecord nombrado logrecord se crea manualmente mediante datos definidos por el usuario y el valor del argumento se imprime por argumentos atributo.
ejemplo17.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo17.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de los atributos de Logrecord - AscTime
ascTime El atributo se usa para almacenar el tiempo en que se crea un Logrecord. Almacenó la fecha, hora y horario en milisegundos después de crear cualquier objeto de registrador. El siguiente ejemplo muestra el uso de este atributo. El formato de este atributo es '%(ascTime) s'.
ejemplo18.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo18.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de los atributos de Logrecord - nombre de archivo
Nombre del archivo El atributo se utiliza para recuperar la parte del nombre de archivo desde la ruta. El siguiente ejemplo muestra el uso de este atributo. El formato de este atributo es '%(nombre de archivo) s'.
ejemplo19.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo19.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de los atributos de Logrecord - Funcname
nombre de función El atributo es recuperar el nombre de la función de donde se llama el registro. El siguiente ejemplo muestra el uso de este atributo. Aquí, el objeto Logger se crea en la función, mylog_func (). El formato de este atributo es '%(Funcname) S'.
ejemplo20.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo20.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de los atributos de Logrecord - Lino
lino El atributo se utiliza para recuperar el número de línea de donde se llama el registro. Devolverá un valor numérico. El siguiente ejemplo muestra el uso de este atributo. El formato de este atributo es '%(lino) s'.
Ejemplo21.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo21.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de atributos de Logrecord - Módulo
módulo El atributo se usa para recuperar solo el nombre de archivo sin una extensión de la ruta del archivo. El siguiente ejemplo muestra el uso de este atributo. El formato de este atributo es '%(módulo) s'.
ejemplo22.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo22.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de los atributos de Logrecord - Nombre
nombre El atributo se usa para recuperar el nombre del registrador que se usa en la función getLogger (). El siguiente ejemplo muestra el uso de este atributo. El formato de este atributo es '%(nombre) s'.
ejemplo23.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo23.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Uso de los atributos de Logrecord - PathName
nombre de ruta El atributo se utiliza para recuperar la ruta de la ubicación del archivo. El siguiente ejemplo muestra el uso de este atributo. El formato de este atributo es '%(PathName) S' S '.
ejemplo24.py
#Módulo de ImportEjecute el script desde el terminal.
$ Python Ejemplo24.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
Usando el registro.desactivar
La función de disable () se usa para deshabilitar toda la llamada de registro para el nivel específico. Por ejemplo, si se llama con nivel de información, todos los mensajes de registro de información, advertencia, error y crítico se ignorarán para todos los registradores. El uso de esta función se muestra en el siguiente ejemplo. El mensaje de advertencia está habilitado para el registrador predeterminado. Entonces, el segundo mensaje de advertencia no se imprimirá después de deshabilitar el nivel de advertencia.
ejemplo25.py
#Módulo de importaciónEjecute el script desde el terminal.
$ Python Ejemplo25.pyProducción:
La siguiente salida aparecerá después de ejecutar el script.
Ve arriba
La información de registro ayuda al codificador a identificar los diversos problemas del código y resolver el problema rápidamente. El programador de Python debe aprender opciones de registro de Python para que su código sea más apropiado. Los usos básicos del registro de pitón se muestran en este artículo utilizando 25 ejemplos diferentes. Espero que este artículo ayude a los lectores a aplicar los datos de registro en su código Python correctamente.