A colorful logger for python3.
Project description
python-logger
Colorful logger for python3
How to use
Install
pip install colorful-logger
Usage
1 default logger
You can directly use the default logger, the colored logs will be printed on the terminal, and the default logger level is warning.
from colorful_logger import logger
logger.debug("This is a debug message.")
logger.info("This is a info message.")
logger.warning("This is a warning message.")
logger.error("This is a error message.")
logger.fatal("This is a fatal message.")
2 custom logger
You can also change the log level, save the log to a file, change the logger name, and the log may not be output to the terminal.
from colorful_logger import get_logger
from colorful_logger.logger import DEBUG
logger = get_logger(name="sample_logger", level=DEBUG, file_path="./test.log")
logger.debug("This is a debug message.")
logger.info("This is a info message.")
logger.warning("This is a warning message.")
logger.error("This is a error message.")
logger.fatal("This is a fatal message.")
The contents of the log file:
[DEBUG] 2021-05-21 15:08:42 test.py:8 - This is a debug message.
[INFO] 2021-05-21 15:08:42 test.py:9 - This is a info message.
[WARNING] 2021-05-21 15:08:42 test.py:10 - This is a warning message.
[ERROR] 2021-05-21 15:08:42 test.py:11 - This is a error message.
[CRITICAL] 2021-05-21 15:08:42 test.py:12 - This is a fatal message.
As you can see, the log saved to the file uses the default formatter, so it is not in color.
3 basic config
Use the basic_logger
function to configure the global logger.
from colorful_logger import basic_logger
from colorful_logger.logger import INFO
basic_logger(level=INFO, show=False, file_path="./test.log")
Then all loggers generated in other files will use this configuration.
# a.py
import logging
logger = logging.getLogger("a")
# b.py
import logging
logger = logging.getLogger("b")
When the level is set to DEBUG
or NOSET
, there may be logs generated by other third-party libraries when using the global configuration.
4 child logger
If you don't want to see the logs generated by third-party libraries, you need to use the child_logger
method.
from colorful_logger import get_logger
from colorful_logger.logger import DEBUG
# parent logger
logger = get_logger(name="sample_logger", level=DEBUG, file_path="./test.log")
# child logger in other files
from colorful_logger import child_logger
# child1.py
child1 = child_logger("child1", logger)
# child2.py
child2 = child_logger("child2", logger)
# child3.py
child3 = child_logger(__name__, logger)
If all loggers in your project have only one parent logger, you can reimplement a chil_logger method.
from colorful_logger import get_logger, child_logger
from colorful_logger.logger import DEBUG
# parent logger
logger = get_logger(name="sample_logger", level=DEBUG, file_path="./test.log")
def my_child_logger(name: str):
return child_logger(name, logger)
# child1.py
child1 = my_child_logger("child1")
# child2.py
child2 = my_child_logger("child2")
# child3.py
child3 = my_child_logger(__name__)
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 Distributions
Built Distribution
Hashes for colorful_logger-0.0.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 801e5f05ff0b6b4b22f7b4bc1e8068b4354b9cf89291f1b2ca1de8bff9da545f |
|
MD5 | 95bd39978429b407a2e33876821b8240 |
|
BLAKE2b-256 | 282e5841abf6b7feabdfe619a5cd629df12838cd3d87af039a202793d85f0943 |