Logging made simple, no excuse for any print call.
Project description
Simple Logging
Logging made simple, no excuse for any print call.
- Free software: BSD 3-Clause license
- Documentation: https://simplelogging.readthedocs.io.
Features
- Simple logging setup
- Based on Python logging module
Example
Basic usage
import simplelogging
# log = simplelogging.get_logger(console_level=simplelogging.DEBUG)
# log = simplelogging.get_logger(file_name="log.txt")
log = simplelogging.get_logger()
a_string_variable = 'hello'
an_integer_variable = 42
a_floating_point_variable = 3.14
log.debug("some debug")
log.debug(
"some variables: %s, %d, %f",
a_string_variable,
an_integer_variable,
a_floating_point_variable,
)
log.info("some info")
log.warning("some warning")
log.error("some error")
log.critical("some critical error")
try:
x = 1 / 0
except ZeroDivisionError as error:
log.exception(error)
Usage with modules
example_module.py
import simplelogging
log = simplelogging.get_logger()
def log_some_messages():
log.debug("## some debug ##")
log.info("## some info ##")
log.warning("## some warning ##")
log.error("## some error ##")
main.py
import simplelogging
import example_module
# log = simplelogging.get_logger(console_level=simplelogging.DEBUG)
# log = simplelogging.get_logger(file_name="log.txt")
log = simplelogging.get_logger()
a_variable = "a nice variable"
another_variable = 42
log.error("---- normal logging ----")
log.debug("a debug message")
log.info("an info")
log.warning("a warning")
log.error("%s and %d", a_variable, another_variable)
log.error("---- example_module writes to the log ----")
example_module.log_some_messages()
log.error("---- reduced logging (bye debug and info messages) ----")
simplelogging.reduced_logging(log)
log.debug("a debug message")
log.info("an info")
log.warning("a warning")
log.error("an error")
log.error("---- full logging (welcome back debug and info messages) ----")
simplelogging.full_logging(log)
log.debug("a debug message")
log.info("an info")
log.warning("a warning")
log.error("an error")
Result in the console
2018-12-02 18:44:34,897 [ERROR ] main_simple.py( 11):<module> :: ---- normal logging ----
2018-12-02 18:44:34,897 [INFO ] main_simple.py( 13):<module> :: an info
2018-12-02 18:44:34,898 [WARNING] main_simple.py( 14):<module> :: a warning
2018-12-02 18:44:34,898 [ERROR ] main_simple.py( 15):<module> :: a nice variable and 42
2018-12-02 18:44:34,898 [ERROR ] main_simple.py( 17):<module> :: ---- example_module writes to the log ----
2018-12-02 18:44:34,899 [INFO ] example_module.py( 8):log_some_messages :: ## some info ##
2018-12-02 18:44:34,899 [WARNING] example_module.py( 9):log_some_messages :: ## some warning ##
2018-12-02 18:44:34,899 [ERROR ] example_module.py( 10):log_some_messages :: ## some error ##
2018-12-02 18:44:34,900 [ERROR ] main_simple.py( 20):<module> :: ---- reduced logging (bye debug and info messages) ----
2018-12-02 18:44:34,900 [WARNING] main_simple.py( 24):<module> :: a warning
2018-12-02 18:44:34,901 [ERROR ] main_simple.py( 25):<module> :: an error
2018-12-02 18:44:34,901 [ERROR ] main_simple.py( 27):<module> :: ---- full logging (welcome back debug and info messages) ----
2018-12-02 18:44:34,901 [INFO ] main_simple.py( 30):<module> :: an info
2018-12-02 18:44:34,902 [WARNING] main_simple.py( 31):<module> :: a warning
2018-12-02 18:44:34,902 [ERROR ] main_simple.py( 32):<module> :: an error
More examples are provided in the documentation: https://simplelogging.readthedocs.io.
Credits
This package is an extension of the logging package in the Python standard library. Coloring of the console relies on colorlog.
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
0.7.0 (2018-12-08)
- Fix logging to file
0.6.0 (2018-12-07)
- Colored output on console
- Improved documentation
0.5.0 (2018-12-02)
- Fix README rendering in PyPI
0.4.0 (2018-12-02)
- Fix bump config
0.3.0 (2018-12-02)
- First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
simplelogging-0.7.0.tar.gz
(14.9 kB
view details)
Built Distribution
File details
Details for the file simplelogging-0.7.0.tar.gz
.
File metadata
- Download URL: simplelogging-0.7.0.tar.gz
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 194ea3b20d72c2cc4cde13fffcf3f271120574ed0f8ddcb0e0da945fdaf17792 |
|
MD5 | b28c78e815ded2c1651bb86c95722594 |
|
BLAKE2b-256 | 5fbc5ea4cae4ea178b2f3be8214db0c794af8727dfa57d9e1cbc2454c5860cf5 |
File details
Details for the file simplelogging-0.7.0-py2.py3-none-any.whl
.
File metadata
- Download URL: simplelogging-0.7.0-py2.py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 23305ec7a341eaea3084f7670747767d771e90e2e03e184d706d8face92b0c6c |
|
MD5 | 7841621b99b00fbf0f0a42dcc8913dfc |
|
BLAKE2b-256 | 812b9cd7802e9a63225308ef9ce02579a868131a88efa7634f7e343655dc231c |