«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Ведение журнала с помощью Python

Ведение журнала с помощью Python

Опубликовано 8 ноября 2024 г.
Просматривать:678

Logging con Python

Журналы, логи. Что это такое и как регистрировать события с помощью Python

Создание журналов с помощью ведения журналов обеспечивает нам большую функциональность и гибкость кода. В этой короткой статье я покажу вам основы и еще кое-что, чтобы начать использовать их в своих проектах.

Что такое логирование? А журнал?

Журналирование – это способ отслеживания событий. Эти события видны через описательное сообщение с определенной информацией о переменных (значение какой-либо переменной или результат функции) и с определенным уровнем важности.
Журнал похож на распечатку в Python, но разница в том, что он не обязательно печатается на экране, и эти журналы можно сохранить в известном файле.

Как я могу его использовать?

Мы будем использовать библиотеку журналирования, которая уже встроена в 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

Если мы выполним это, будет создан файл с именем log-de-hoy.log:

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

Объяснение

?? Начинаем базовую настройку: с помощью logging.basicConfig мы объявляем:

  • имя файла: имя конкретного файла, в который мы хотим добавить журналы (например, имя — log-de-hoy.log, но в идеале оно должно иметь описательное имя с датой дня)
  • кодировка: тип формата, в котором мы сохраняем каждый журнал
  • уровень: мы определяем, с какого уровня мы хотим наблюдать. Различные уровни указаны в их документации, и вы увидите, что они имеют числовое значение, при этом logging.INFO равен 20. Если нам нужен debug, по крайней мере, мне нужно 10. Итак, с logging.DEBUG мы убедитесь, что зарегистрированы уровни со значением 10 и выше.
  • формат: формат, в котором записываются журналы, в данном случае это дата уровня сообщения

?? Записываем результат суммы с информацией об уровне

?? Регистрируем ошибку добавления целого числа и строки с ошибкой уровня

Зачем использовать журналирование?

Возможно, вы уже можете себе это представить, поскольку это мощный инструмент, который поможет нам быстро выявить аномалии. Вот некоторые варианты использования:

  • ? Отладка и устранение неполадок
  • ? Мониторинг и анализ производительности
  • ? Аудит и соблюдение требований
  • ? Безопасность и обнаружение аномалий

Чтобы закончить…

Это легко реализовать, правда? Плюс ли интегрировать его в любой проект и отказаться от использования такого количества принтов?.

Модуль журналирования предлагает гораздо больше, чем то немногое, что я здесь показал. Но этого немногого более чем достаточно! При необходимости в документации достаточно хорошо объясняются другие случаи, методы, конфиги и так далее.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/javicerodriguez/logging-con-python-2j7m?1. Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3