Skip to content

hongism/contek-timbersaw

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Timbersaw Logging Configurator

timbersaw is a an automatic logging configurator.

1. Quick Start

import logging
import contek_timbersaw as timbersaw

timbersaw.setup()
logger = logging.getLogger(__name__)

logger.info('foo bar')

2. Results

INFO level logging will be written to:

{WORKING_DIRECTORY}/logs/info/{yyyy}-{MM}-{dd}.log

ERROR level logging will be written to:

{WORKING_DIRECTORY}/logs/error/{yyyy}-{MM}-{dd}.log

3. Features

Compression

When an INFO log file passes its active period (defaults to when a new day starts), it gets GZipped. For example:

2009-01-03.log -> 2009-01-03.log.gz

Retention

Old logs will be deleted after their retention period. By default, INFO logs are kept for 14 days and ERROR logs are kept for 28 days.

4. Default Settings

log_format

%(asctime)s %(levelname)s %(filename)s:%(lineno)d - %(message)s

log_date_format

%Y-%m-%dT%H:%M:%S

log_root

{WORKDING_DIRECTORY}/logs

log_rolling

MIDNIGHT

log_utc

False

log_info_retention_days

14

log_error_retention_days

28

5. Customization

Settings are configurable via environment properties. They can be set before your program starts using export. For example:

export log_error_retention_days=7

Otherwise, they can be set at runtime using os.environ. For example:

import os

os.environ['log_error_retention_days'] = '7'

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.3%
  • Batchfile 0.7%