"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Registro em Python

Registro em Python

Publicado em 2024-11-08
Navegar:279

Logging con Python

Registros, registro. O que é e como registrar eventos com Python

Criar logs usando logging nos permite muita funcionalidade e flexibilidade no código. Neste pequeno artigo mostro o básico e um pouco mais para começar a incorporá-lo em seus projetos.

O que é registro? E um registro?

Logging é uma forma de monitorar eventos. Esses eventos são visíveis através de uma mensagem descritiva, com determinadas informações variáveis ​​(o valor de alguma variável ou o resultado de uma função) e com um determinado nível de importância.
Um log é como um print em Python, mas a diferença é que eles não necessariamente são impressos na tela e esses logs podem ser salvos em um arquivo conhecido.

Como posso usá-lo?

Usaremos a biblioteca logging, que já vem nativamente em Python:

import logging

logging.basicConfig(
    filename="log-de-hoy.log",
    encoding="utf-8",
    level=logging.DEBUG,
    format="%(asctime)s %(levelname)s %(message)s"
)

def add(a, b):
    try:
        result = a   b
        logging.info(f"Adding {a} and {b}. Result: {result}")
    except TypeError:
        result = None
        logging.error("The values should be numeric")
    return result

print(add(2, 3)) # 5
print(add(2, "3")) # None

Se executarmos isso, um arquivo chamado log-de-hoy.log será gerado:

2023-12-08 11:56:30,544 INFO Adding 2 and 3. Result: 5
2023-12-08 11:56:30,544 ERROR The values should be numeric

Explicação

?? Iniciamos a configuração básica: com logging.basicConfig declaramos:

  • nome do arquivo: nome do arquivo específico ao qual queremos adicionar os logs (por exemplo, o nome é log-de-hoy.log, mas idealmente deve ter um nome descritivo com a data do dia)
  • codificação: tipo de formato em que salvamos cada log
  • nível: definimos a partir de qual nível queremos observar. Os diferentes níveis estão em sua documentação e você verá que eles têm um valor numérico, sendo logging.INFO 20. Se precisarmos de debug, pelo menos preciso de 10. Então, com logging.DEBUG nós certifique-se de que os níveis com valor 10 em diante estejam registrados.
  • formato: formato no qual os logs são registrados, neste caso é a data do nível da mensagem

?? Registramos o resultado da soma com informações de nível

?? Registramos o erro de adicionar um int e uma string com erro de nível

Por que usar o registro?

Talvez você já possa imaginar, pois é uma ferramenta poderosa que nos ajudará a identificar anomalias rapidamente. Alguns dos casos de uso para usá-lo são:

  • ? Depuração e solução de problemas
  • ? Monitoramento e análise de desempenho
  • ? Auditoria e conformidade
  • ? Segurança e detecção de anomalias

Para terminar…

É fácil de implementar, certo? É uma vantagem integrá-lo a qualquer projeto e parar de usar tantas estampas?.

O módulo logging oferece muito mais do que o pouco que mostrei aqui. Mas esse pouco é mais que suficiente! Se necessário, a documentação explica muito bem outros casos, métodos, configurações e assim por diante.

Declaração de lançamento Este artigo está reproduzido em: https://dev.to/javicerodriguez/logging-con-python-2j7m?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3