"""
Log module standard example
The file structure is:
logs:
__init__.py
****.log
The log contains two handlers:
StreamHandler: Output to console
FileHandler: output to file
"""
import os
import logging
# Initialization: log level, log file name
logger_level = logging.INFO
# Get the absolute path to the current directory
# Note: Cannot use ('.') This is the absolute path to the running python file
dir_path = os.path.dirname(os.path.abspath(__file__))
file_logger_name = os.path.join(dir_path, '')##Log save file location
# Log definition
logger = logging.getLogger(__name__)
logger.setLevel(logger_level)
# Create handler output to console
handler = logging.StreamHandler()
handler.setLevel(logger_level)
# Create handler output to file
# a+: pro add
# w+: dev override
file_handler = logging.FileHandler(file_logger_name, mode='a+')
file_handler.setLevel(logger_level)
# Create logging format
formatter = logging.Formatter("%(asctime)s - %(levelname)s - %(message)s")
handler.setFormatter(formatter)
file_handler.setFormatter(formatter)
# add the handlers to the logger
logger.addHandler(handler)
logger.addHandler(file_handler)