Skip to content

henrybodkincs/logger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logger

Tests

An easy-to-use logger class built using python3's native logger library. It can intelligently handle pushing stdout messages between files/terminals based off configured options. Extremely useful for setting up a whole logger.Logging() instance without worrying about configuring format/file-handling for scripts/applications.

Features

  • Has a built-in logging style: [DATE TIME] [LEVEL] [LOG NAME] [LOG COUNT] - [MESSAGE]
  • supports python's built-in with() statement
  • Can figure out whether to log a specific message to a file or log based off the Level configured such as:
    • Level 0/None - Log everything to the terminal.
    • Level 1 - Log critical to file. Log warnings/ok/info to terminal.
    • Level 2 - Log critical/error to file. Log warnings/info/ok to terminal.
    • Level 3 - Log errors/warnings to file. Log INFO/OK the terminal
    • Level 4 - Log everything into file
  • Dynamically switch log levels and logging files with set_log_file() and set_log_level() respectively.
  • Enable/Disable logging as needed.

Installation(Requires python >= 3.6)

pip3 install logger-henryriveracs==0.3.0 OR copy src/logger/logger.py into your repository.

Usage

#python3
from logger.logger import Log
items = ["item1", "item2", "item3", "item4", "item5"]

my_logger = Log(Name="My Logger")

my_logger.info(items[0])
my_logger.ok(items[1])
my_logger.warning(items[2])
my_logger.error(items[3])
my_logger.critical(items[4])

# pointing logger to example.log with log level set to 2
my_logger.set_log_file("example.log")
my_logger.set_log_level(2)
my_logger.ok("Test OK")
my_logger.error("Test Error")

Results from running example.py under the example/ folder

Terminal:

Image of example.py logger results for the terminal

File:

Image of example.py logger results for the terminal

About

Light and easy to use python logger

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages