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.1.tar.gz (8.2 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.1-py3-none-any.whl (7.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: a1_loggermanager-0.1.1.tar.gz
  • Upload date:
  • Size: 8.2 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.1.tar.gz
Algorithm Hash digest
SHA256 a68f48dc70132571bee4d68298f7343d25569202c25d61d2e8b4f7a0867e5a8b
MD5 df630b2298dc5581f26729c796ce4084
BLAKE2b-256 5211ac1351f4bebd4bd5e8341b1b4bf5a0a1e41dbff5976aa214a2e5970bd897

See more details on using hashes here.

File details

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

File metadata

  • Download URL: a1_loggermanager-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.5 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 777cfbf38ad4b26a33acce8c1f13311cb2caaebf23b4b9109856ee2971aa6264
MD5 c5cf43254c8537bc72260fed5966acdb
BLAKE2b-256 83ec68072aac2e44511d823f206c452c22294ca07e7e11d3409d64d75ad42cc8

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