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

Uploaded Python 3

File details

Details for the file a1_loggermanager-0.1.0.post1.tar.gz.

File metadata

  • Download URL: a1_loggermanager-0.1.0.post1.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.0.post1.tar.gz
Algorithm Hash digest
SHA256 2a26644b7ba48afb117f4abde16b864e366879bd7b6bd39b0172f72aa5d84b07
MD5 dc3795e7aee711f80ed4ddbd9e668eae
BLAKE2b-256 80a421f0f143b25a0c05aa3a2dc19987b0f17a8e6576426346188278193d66a2

See more details on using hashes here.

File details

Details for the file a1_loggermanager-0.1.0.post1-py3-none-any.whl.

File metadata

File hashes

Hashes for a1_loggermanager-0.1.0.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 b1ea15dc574e837f563d8178aa22cb62001a32698a4184a628be5edc2f3c9fa3
MD5 0d76609a7027deb59729f5453a7f5724
BLAKE2b-256 e45c535a68995bcff5eb061cd777f010b732e3c971e490ad8470a469a37f14b6

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