Skip to main content

No project description provided

Project description

a1_loggermanager

Python logging.Logger manager

In this README :point_down:

Features

  • get default logger
  • add and store for use formatters, handlers, and loggers
  • set logger level
  • access logging.logger
  • easy to follow example script (see github repo)

Usage

Get a logger

import a1_loggermanager
logger_manager = a1_loggermanager.get_logger_manager()
logger = logger_manager.get_my_logger('default_console_logger')
logger.info('Created `logger_manager` and `logger`')

2024-11-15 14:50:18 INFO my_logger.py: Created logger_manager and logger

add new logger

my_logger_parms = ({
...   'name': 'logger2',
...     'handler_names': ('default_streamhandler',)
...     })
logger_manager.add_my_logger(my_logger_parms)
MyLogger(name='logger2', handlers={}, logger=<Logger logger2 (WARNING)>)
logger2 = logger_manager.get_my_logger('logger2')
logger2.info('Created `logger2`?')
logger2.set_level('info')
logger2.info('Created `logger2`!')

2024-11-15 15:10:27 INFO my_logger.py: Created logger2!

add a file handler logger and a combined console and file handler logger

set and add a file handler configuration

myh = (
  { 'name': 'default_filehandler',
    'formatter_name': 'default_format',
    'handler_type': 'FileHandler',
    'parms': {
      'filepath': filepath,
      'encoding': "utf-8",
      'mode': "a"
    }
  },
)
logger_manager.add_my_handlers(myh)

set and add a couple of logger configurations with the file handler config

myl = (
  { 'name': 'file_logger',
    'level': 'info',
    'handler_names': ('default_filehandler',),
  },
  { 'name': 'console_and_file_logger',
    'level': 'info',
    'handler_names': ('default_streamhandler', 'default_filehandler'),
  }
)
logger_manager.add_my_loggers(myl)

get the file handler logger and log an entry

file_logger = logger_manager.get_my_logger('file_logger')
file_logger.info('Created `file_logger`')

get the combined console and file handler logger and log an entry

console_file_logger = logger_manager.get_my_logger('console_and_file_logger')
console_file_logger.info('Created `console_file_logger`')

accessing logging.logger, eg;

logger2.logger.addFilter(filter_debug) 

FAQ

Is this package developed primarily for creator use?

Yes, it's a first package published to https://pypi.org/ and as much a learning tool as anything. That said the logger manager should be useful as a starting point for any similar project or just to avoid getting caught up in logging.Logger docs. Use it to easily create and manage loggers.

Contributing

If you find a bug :bug:, have a suggestion :rocket:, etc., please let me know (mike@a1publishing.com:)

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

a1_loggermanager-0.1.3.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

a1_loggermanager-0.1.3-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file a1_loggermanager-0.1.3.tar.gz.

File metadata

  • Download URL: a1_loggermanager-0.1.3.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.0 Windows/11

File hashes

Hashes for a1_loggermanager-0.1.3.tar.gz
Algorithm Hash digest
SHA256 d68c030238fd42bb2d1c536541639eb0457a4e0fc618b43bd88204d2ee80ea5a
MD5 58776c4924790f9ff7854bd1b1545f46
BLAKE2b-256 00583022cd492026d47e5571b5ddea9f390e20d654cc123de82dcdad7bc2c14a

See more details on using hashes here.

File details

Details for the file a1_loggermanager-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: a1_loggermanager-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.0 Windows/11

File hashes

Hashes for a1_loggermanager-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 56305f2fb259c727f79679ff9ff00764bc1c585375919d4bcfa29cf1d7b9aed8
MD5 4efb56f96673c5beaf8cc21300b1f0e9
BLAKE2b-256 8f25c1a4ebf6d7883cd73bae9cd13aed7768bf0d4406a509c0356bca1dbbe777

See more details on using hashes here.

Supported by

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