Grave registros em um arquivo em Python
-
Grave registros em um arquivo com o módulo
logging
em Python -
Grave registros em um arquivo com a função
logging.FileHandler()
em Python
Este tutorial apresentará os métodos para gravar logs em um arquivo em Python.
Grave registros em um arquivo com o módulo logging
em Python
Os logs são usados para depurar um programa e descobrir o que deu errado. O módulo logging
é usado para registrar dados em um arquivo em Python. Podemos usar a função logging.basicConfig()
para configurar os logs a serem gravados em um arquivo específico. Por padrão, podemos registrar 5 tipos de linhas com o módulo logging
. Esses tipos de mensagem incluem depuração, informação, aviso, erro e crítica. Ainda assim, podemos aumentar esse número para o que precisarmos por meio da codificação. O exemplo de código a seguir nos mostra como gravar logs em um arquivo com a função logging.basicConfig()
.
import logging
# Creating and Configuring Logger
Log_Format = "%(levelname)s %(asctime)s - %(message)s"
logging.basicConfig(
filename="logfile.log", filemode="w", format=Log_Format, level=logging.ERROR
)
logger = logging.getLogger()
# Testing our Logger
logger.error("Our First Log Message")
O conteúdo do arquivo de logfile.log
:
ERROR 2021-06-13 04:14:29,604 - Our First Log Message
Escrevemos a mensagem de log Our First Log Message
do nível error
com a data e hora adequadas de log usando a função logging.basicConfig()
no código acima. O mais importante ao escrever os logs é a data e a hora de sua ocorrência. Portanto, primeiro criamos um formato para nossos logs dentro da string Log_Format
. Este formato inclui o nível do log, a data e hora da ocorrência e a mensagem a ser escrita.
Em seguida, usamos o parâmetro filename
da função logging.basicConfig()
para especificar o arquivo de log. Atribuímos o valor a
ao parâmetro filemode
da função logging.basicConfig()
para abrir o arquivo no modo append
para que os logs anteriores não sejam excluídos toda vez que houver um novo log. Em seguida, definimos o parâmetro format
como Log_Format
. Após essa etapa, atribuímos logging.ERROR
ao parâmetro level
para especificar o nível mínimo dos logs para erro. Criamos um objeto logger com logger = logging.getLogger()
para escrever mensagens de log. No final, escrevemos a mensagem de erro com logger.error("Our First Log Message")
.
Grave registros em um arquivo com a função logging.FileHandler()
em Python
Também podemos usar a função logging.FileHandler()
para gravar logs em um arquivo em Python. Esta função pega o caminho do arquivo onde queremos escrever nossos logs. Podemos então usar a função addHandler()
para adicionar este manipulador ao nosso objeto logger. O código a seguir demonstra como gravar logs em um arquivo com a função logging.FileHandler()
.
import logging
logger = logging.getLogger()
handler = logging.FileHandler("logfile.log")
logger.addHandler(handler)
logger.error("Our First Log Message")
conteúdo logfile.log:
Our First Log Message
Escrevemos a mensagem de log, Our First Log Message
, no arquivo logfile.log
com a função logging.FileHandler()
no código acima. Primeiro criamos um objeto logger que usaremos para escrever logs com a função logging.getLogger()
. Em seguida, criamos um manipulador de arquivo, handler
, e atribuímos logging.FileHandler('logfile.log')
a ele. Depois disso, adicionamos este novo handler
ao nosso objeto logger com logger.addHandler(handler)
. No final, escrevemos a mensagem de erro em nosso arquivo com logger.error('Our First Log Message')
.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn