Introdução à Biblioteca logging em Python
Francisco Júnior
Posted on November 26, 2023
O módulo logging
é parte da biblioteca padrão do Python e fornece um sistema de registro flexível e poderoso. Ele permite a gravação de mensagens para diferentes destinos, como a saída do console, arquivos de log, sockets, entre outros.
Níveis de Log
A biblioteca logging
oferece vários níveis de registro para categorizar mensagens de acordo com sua importância:
-
DEBUG
: Mensagens detalhadas usadas para diagnóstico. -
INFO
: Mensagens que confirmam o funcionamento adequado do aplicativo. -
WARNING
: Indica situações potencialmente problemáticas. -
ERROR
: Mensagens de erro que indicam problemas. -
CRITICAL
: Mensagens que indicam falhas graves que podem levar ao término do programa.
Funcionalidades Principais
Configuração do Sistema de Log
A configuração do sistema de log é essencial para direcionar as mensagens para diferentes saídas, definir o nível de log e o formato das mensagens.
import logging
logging.basicConfig(filename='app.log', level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
Registro de Mensagens
Registrar mensagens é simples e flexível, permitindo o uso dos diferentes níveis de log.
import logging
logging.debug('Esta é uma mensagem de depuração.')
logging.info('Esta é uma mensagem informativa.')
logging.warning('Esta é uma mensagem de aviso.')
logging.error('Esta é uma mensagem de erro.')
logging.critical('Esta é uma mensagem crítica.')
Personalização do Logger
A personalização do logger permite criar instâncias específicas de log para diferentes partes do aplicativo.
import logging
logger = logging.getLogger('meu_logger')
logger.setLevel(logging.DEBUG)
Saída de Log em Arquivos
Registrar mensagens em arquivos é uma prática comum para preservar um histórico de execução do aplicativo.
import logging
file_handler = logging.FileHandler('app.log')
file_handler.setLevel(logging.INFO)
file_handler.setFormatter(logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'))
logger = logging.getLogger('meu_logger')
logger.addHandler(file_handler)
Exemplos de Uso
Configuração Básica de Log
import logging
logging.basicConfig(filename='app.log', level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
logging.debug('Mensagem de depuração.')
logging.info('Mensagem informativa.')
logging.warning('Mensagem de aviso.')
logging.error('Mensagem de erro.')
logging.critical('Mensagem crítica.')
Registro em Arquivo com Logger Personalizado
import logging
file_handler = logging.FileHandler('app.log')
file_handler.setLevel(logging.INFO)
file_handler.setFormatter(logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'))
logger = logging.getLogger('meu_logger')
logger.addHandler(file_handler)
logger.debug('Mensagem de depuração.')
logger.info('Mensagem informativa.')
logger.warning('Mensagem de aviso.')
logger.error('Mensagem de erro.')
logger.critical('Mensagem crítica.')
Conclusão
A biblioteca logging
é uma ferramenta poderosa para registrar informações em aplicativos Python, fornecendo uma variedade de opções para personalizar o sistema de log. Isso permite a análise e diagnóstico de problemas, facilitando a manutenção e melhoria contínua dos aplicativos. Seja para depurar, monitorar ou registrar informações críticas, a biblioteca logging
é uma aliada essencial para desenvolvedores Python.
Posted on November 26, 2023
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
October 29, 2023