Python 로깅 핸들러

번호 vimos como podemos gerar mensagens de erro, aviso e informativas do sistema. Agora, iremos aprofundar um pouco mais nesse assunto e iremos entender o que são os Handlers.

Os principais Handlers são:

  1. StreamHandler: Retorna a mensagem/log no terminal;
  2. FileHandler: Envia o log para um arquivo definido pelo desenvolvedor;
  3. NullHandler: não faz nenhuma formatação ou saída. É essencialmente um manipulador no-op (sem operação).
Na documentação oficial podemos contar um numero maior de Handlers, mas nesse artigo iremos usar apenas o StreamHandler e o FileHandler.

Vamos começar criando nosso arquivo .py, no meu caso irá se chamar app.py, mas pode atribuir o nome que desejar. Após isso, iremos começar a escrever o nosso codigo...

# Comece importando o módulo logging

import logging

Agora, vamos definir nossa instancia do objeto getLogger() e o nivel de nosso log (nesse caso iremos definir o nivel de DEBUG).

logger = logging.getLogger()
logger.setLevel(logging.DEBUG)

Vamos então definir as propriedades do nosso handler:

# Vamos começar testando o FileHandler
# O nome do nosso arquivo de log será LOG.log
fh = logging.FileHandler('LOG.log')

# Definindo o level do nosso handler
# Nesse caso, também será DEBUG
fh.setLevel(logging.DEBUG)

Após definirmos as propriedades, de fato iremos criar o nosso handler:

logger.addHandler(fh)

Por fim, vamos criar uma simples saida de texto para o nosso logger:

logger.debug('Olá, sou a mensagem de log dentro do seu arquivo.')

Execute usando o script:

sh python app.py

Depois de executar o codigo, olhe na raiz da pasta que agora terá um arquivo com o nome LOG.lg contendo o seguinte conteúdo:


오늘은 StreamHandler의 테스트 버전입니다. Para isso iremos mudar apenas uma linha do codigo:

# de
fh = logging.FileHandler('LOG.log')

# para
fh = logging.StreamHandler()


O restante do código pode manter da forma como estava. 선호하는 파일은 StreamHandler 또는 기록 보관소에서 LOG.log를 저장하는 것입니다.

터미널 없음:
sh python app.py
O seu retorno será no próprio 터미널:


StreamHandler는 특히 StreamHandler의 사용 방식과 FileHandler의 준칙에 따라 StreamHandler와 가장 빠르게 시각적인 관계를 유지하는 데 사용됩니다.

결론



다양한 종류의 로그를 조작할 수 있으며, 다양한 용도로 사용할 수 있습니다.

좋은 웹페이지 즐겨찾기