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.2.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.2-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: a1_loggermanager-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 afb2099a860a99048aac87b38b862c0dbc12a203956c69701e5f0541cb99b936
MD5 d8675f8b0e3bc499cc4643cd8388eba2
BLAKE2b-256 cccbfdb7d865b772caa7fad6c5e937dd0862abe66424f9400c4069e5820621ca

See more details on using hashes here.

File details

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

File metadata

  • Download URL: a1_loggermanager-0.1.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fc620a703528cbbef711bddb61dc02d9a73f5f50ca99b1226ed2f879f0c564f7
MD5 0f70e686e88e1e14ad748c84ebff07fa
BLAKE2b-256 07286ce931bd14f4cf6b965399732f5515ab774bf6cb2b13db9539b25751dcb0

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