Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

loggermanager-0.1.3.1.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

LoggerManager-0.1.3.1-py3-none-any.whl (14.8 kB view details)

Uploaded Python 3

File details

Details for the file loggermanager-0.1.3.1.tar.gz.

File metadata

  • Download URL: loggermanager-0.1.3.1.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.4

File hashes

Hashes for loggermanager-0.1.3.1.tar.gz
Algorithm Hash digest
SHA256 6816884113ee850f3c8816b95726b9f0dfb883725a0cd8cbde022aff6f7a16e3
MD5 47d52090d88cba1a8d27734060ef2be1
BLAKE2b-256 dd5ff8c6377f5370d1355a751b77a3e5052485aef1438c1cb39bad0198cf8297

See more details on using hashes here.

File details

Details for the file LoggerManager-0.1.3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for LoggerManager-0.1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1be55e6e2312344a25a7fb1799dc2ea0bda99646e4020b2beba2cdbf4bb1557c
MD5 5e2bc2a2667725e6fcb303293084d442
BLAKE2b-256 763d8aa5c7b6828b772c496ea456cd905c1dc277db4888e03989dcce04850384

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page