A module that extends the standard Python logging module.
Project description
LoggerManager
LoggerManager - это гибкая система управления логированием с поддержкой логирования в консоль и файл. Система позволяет настраивать уровни логирования, фильтры и формат вывода.
Установка
Установить можно с помощью pip
:
pip install LoggerManager
Использование
from LoggerManager import LoggerManager
logger_manager = LoggerManager(name='MyLogger', log_to_file=True)
logger = logger_manager.logger
logger.debug("This is a debug message")
logger.info("This is an info message")
logger.warning("This is a warning message")
Документация методов
Методы:
-
set_name(name: str)
- Изменяет имя логгера.
- Пример использования:
logger_manager.set_name('NewLoggerName')
-
set_filter(level: LogLevel)
- Устанавливает фильтр для логирования на определённом уровне.
- Пример использования:
logger_manager.set_filter('ERROR')
-
set_filter_list(levels: Sequence[LogLevel])
- Устанавливает список уровней фильтрации.
- Пример использования:
logger_manager.set_filter_list(['INFO', 'ERROR'])
-
clear_filter()
- Очищает текущие фильтры логирования.
- Пример использования:
logger_manager.clear_filter()
-
enable_logging()
- Включает логирование.
- Пример использования:
logger_manager.enable_logging()
-
disable_logging()
- Отключает логирование.
- Пример использования:
logger_manager.disable_logging()
-
enable_internal_logging()
- Включает внутреннее логирование для отладки работы
LoggerManager
. - Пример использования:
logger_manager.enable_internal_logging()
- Включает внутреннее логирование для отладки работы
-
disable_internal_logging()
- Отключает внутреннее логирование.
- Пример использования:
logger_manager.disable_internal_logging()
-
enable_file_logging(file_name: str = 'app.log', log_dir: str = 'logs')
- Включает логирование в файл.
- Пример использования:
logger_manager.enable_file_logging(file_name='logfile.log', log_dir='log_dir')
-
disable_file_logging()
- Отключает логирование в файл.
- Пример использования:
logger_manager.disable_file_logging()
-
set_file_handler_params(max_bytes: int, backup_count: int)
- Настраивает параметры для ротации логов (размер файла и количество резервных копий).
- Пример использования:
logger_manager.set_file_handler_params(max_bytes=1024 * 1024, backup_count=5)
-
set_file_level(level: LogLevel)
- Устанавливает уровень логирования для файлового обработчика.
- Пример использования:
logger_manager.set_file_level('INFO')
-
set_file_filter(level: LogLevel)
- Устанавливает фильтр для файлового логирования на указанном уровне.
- Пример использования:
logger_manager.set_file_filter('ERROR')
-
set_file_filter_list(levels: List[str])
- Фильтрует уровни логирования, которые будут записываться в файл. Можно указать уровни, такие как
"DEBUG"
,"INFO"
,"WARNING"
,"ERROR"
,"CRITICAL"
. - Пример использования:
logger_manager.set_file_filter_list(["WARNING", "ERROR", "CRITICAL"])
Это позволит логировать в файл только сообщения с уровнями"WARNING"
,"ERROR"
и"CRITICAL"
.
- Фильтрует уровни логирования, которые будут записываться в файл. Можно указать уровни, такие как
-
set_file_format(format_string: str)
- Устанавливает формат вывода для файлового логирования.
- Пример использования:
logger_manager.set_file_format("%(asctime)s - %(levelname)s - %(message)s")
-
enable_console_logging()
-
Включает логирование сообщений в консоль.
-
Пример использования:
logger_manager.enable_console_logging()
-
disable_console_logging()
- Отключает логирование в консоль.
- Пример использования:
logger_manager.disable_console_logging()
-
set_console_level(level: LogLevel)
- Устанавливает уровень логирования для консоли.
- Пример использования:
logger_manager.set_console_level('INFO')
-
set_console_filter(level: LogLevel)
- Устанавливает фильтр для консольного логирования.
- Пример использования:
logger_manager.set_console_filter('WARNING')
-
set_console_filter_list(levels: List[str])
- Фильтрует уровни логирования, которые будут отображаться в консоли. Можно указать список уровней, таких как
"DEBUG"
,"INFO"
,"WARNING"
,"ERROR"
,"CRITICAL"
. - Пример использования:
logger_manager.set_console_filter_list(["INFO", "ERROR"])
В этом случае в консоль будут логироваться только сообщения с уровнями"INFO"
и"ERROR"
.
- Фильтрует уровни логирования, которые будут отображаться в консоли. Можно указать список уровней, таких как
-
set_console_format(format_string: str)
- Устанавливает формат вывода для консольного логирования.
- Пример использования:
logger_manager.set_console_format("%(asctime)s - %(message)s")
-
set_console_color(level: LogLevel, color: ColorName)
- Устанавливает цвет для указанного уровня консольного логирования.
- Пример использования:
logger_manager.set_console_color('ERROR', 'red')
-
set_all_level(level: LogLevel)
- Устанавливает единый уровень логирования для всех обработчиков.
- Пример использования:
logger_manager.set_all_level('WARNING')
-
set_all_filter(level: LogLevel)
- Устанавливает единый фильтр для всех обработчиков.
- Пример использования:
logger_manager.set_all_filter('ERROR')
-
clear_all_filter()
- Очищает все фильтры для всех обработчиков.
- Пример использования:
logger_manager.clear_all_filter()
time_execution()
- Контекстный менеджер для логирования времени выполнения блока кода.
- Пример использования:
with logger_manager.time_execution(): # код, время выполнения которого нужно логировать pass
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for LoggerManager-0.1.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1be55e6e2312344a25a7fb1799dc2ea0bda99646e4020b2beba2cdbf4bb1557c |
|
MD5 | 5e2bc2a2667725e6fcb303293084d442 |
|
BLAKE2b-256 | 763d8aa5c7b6828b772c496ea456cd905c1dc277db4888e03989dcce04850384 |