PYTHON_REAL Telegram 990
Улучшаем логирование в Python с Loguru

Встроенный модуль logging в Python мощный, но довольно многословный и требует много шаблонного кода. Библиотека Loguru упрощает логирование, предлагая удобный и мощный API. Основные особенности и как начать использовать Loguru.

🔹Установка


pip install loguru


🔹Простой пример


from loguru import logger

logger.debug("Отладочное сообщение")
logger.info("Информационное сообщение")
logger.success("Сообщение об успешной операции")
logger.warning("Предупреждение")
logger.error("Ошибка")
logger.critical("Критическая ошибка")


Loguru автоматически добавляет:

* временную метку,
* уровень лога,
* путь к файлу и номер строки,
* и форматирует вывод по умолчанию.

🔹Удаление стандартного логгера

По умолчанию Loguru добавляет логгер в sys.stderr. Можно удалить его и добавить свой:


logger.remove()
logger.add("file.log", rotation="1 MB", compression="zip")


Здесь:

* rotation — лог будет разбит на части при достижении 1 МБ,
* compression — старые логи будут архивироваться в zip.

🔹Форматирование логов

Loguru позволяет настраивать формат:


logger.add("log.txt", format="{time} {level} {message}", level="INFO")


Можно использовать кастомные форматеры и сериализацию в JSON.

🔹Перехват исключений

Loguru умеет автоматически логировать исключения:


@logger.catch
def divide(a, b):
return a / b

divide(1, 0)


Это логирует traceback без необходимости писать try/except.

🔹Интеграция со стандартным логированием

Можно перенаправить стандартный logging в Loguru:


import logging
from loguru import logger

class InterceptHandler(logging.Handler):
def emit(self, record):
logger_opt = logger.opt(depth=6, exception=record.exc_info)
logger_opt.log(record.levelname, record.getMessage())

logging.basicConfig(handlers=[InterceptHandler()], level=0)


🔹Заключение

Loguru — это мощная альтернатива стандартному модулю logging, которая избавляет от шаблонного кода и делает логирование более выразительным и удобным. Особенно полезна для проектов, где читаемость и простота важны так же, как функциональность.


https://realpython.com/python-loguru/

#python

👉 @python_real
Please open Telegram to view this post
VIEW IN TELEGRAM



tgoop.com/python_real/990
Create:
Last Update:

Улучшаем логирование в Python с Loguru

Встроенный модуль logging в Python мощный, но довольно многословный и требует много шаблонного кода. Библиотека Loguru упрощает логирование, предлагая удобный и мощный API. Основные особенности и как начать использовать Loguru.

🔹Установка


pip install loguru


🔹Простой пример


from loguru import logger

logger.debug("Отладочное сообщение")
logger.info("Информационное сообщение")
logger.success("Сообщение об успешной операции")
logger.warning("Предупреждение")
logger.error("Ошибка")
logger.critical("Критическая ошибка")


Loguru автоматически добавляет:

* временную метку,
* уровень лога,
* путь к файлу и номер строки,
* и форматирует вывод по умолчанию.

🔹Удаление стандартного логгера

По умолчанию Loguru добавляет логгер в sys.stderr. Можно удалить его и добавить свой:


logger.remove()
logger.add("file.log", rotation="1 MB", compression="zip")


Здесь:

* rotation — лог будет разбит на части при достижении 1 МБ,
* compression — старые логи будут архивироваться в zip.

🔹Форматирование логов

Loguru позволяет настраивать формат:


logger.add("log.txt", format="{time} {level} {message}", level="INFO")


Можно использовать кастомные форматеры и сериализацию в JSON.

🔹Перехват исключений

Loguru умеет автоматически логировать исключения:


@logger.catch
def divide(a, b):
return a / b

divide(1, 0)


Это логирует traceback без необходимости писать try/except.

🔹Интеграция со стандартным логированием

Можно перенаправить стандартный logging в Loguru:


import logging
from loguru import logger

class InterceptHandler(logging.Handler):
def emit(self, record):
logger_opt = logger.opt(depth=6, exception=record.exc_info)
logger_opt.log(record.levelname, record.getMessage())

logging.basicConfig(handlers=[InterceptHandler()], level=0)


🔹Заключение

Loguru — это мощная альтернатива стандартному модулю logging, которая избавляет от шаблонного кода и делает логирование более выразительным и удобным. Особенно полезна для проектов, где читаемость и простота важны так же, как функциональность.


https://realpython.com/python-loguru/

#python

👉 @python_real

BY Реальный Python




Share with your friend now:
tgoop.com/python_real/990

View MORE
Open in Telegram


Telegram News

Date: |

A few years ago, you had to use a special bot to run a poll on Telegram. Now you can easily do that yourself in two clicks. Hit the Menu icon and select “Create Poll.” Write your question and add up to 10 options. Running polls is a powerful strategy for getting feedback from your audience. If you’re considering the possibility of modifying your channel in any way, be sure to ask your subscribers’ opinions first. Content is editable within two days of publishing Matt Hussey, editorial director at NEAR Protocol also responded to this news with “#meIRL”. Just as you search “Bear Market Screaming” in Telegram, you will see a Pepe frog yelling as the group’s featured image. A Telegram channel is used for various purposes, from sharing helpful content to implementing a business strategy. In addition, you can use your channel to build and improve your company image, boost your sales, make profits, enhance customer loyalty, and more. Don’t publish new content at nighttime. Since not all users disable notifications for the night, you risk inadvertently disturbing them.
from us


Telegram Реальный Python
FROM American