Skip to content

Commit

Permalink
Add logging_config.py
Browse files Browse the repository at this point in the history
  • Loading branch information
Ya-Liang Chang (Allen) committed Dec 15, 2018
1 parent 70e03d8 commit 06ab997
Showing 1 changed file with 40 additions and 0 deletions.
40 changes: 40 additions & 0 deletions logging_config.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import os
import sys
from time import localtime, strftime
import logging

# Clean existing handlers
for handler in logging.root.handlers[:]:
logging.root.removeHandler(handler)

# Create log dir
LOG_DIR = 'logs'
created_time = strftime("%Y%m%d_%H%M%S", localtime())
if not os.path.exists(LOG_DIR):
os.makedirs(LOG_DIR)

# Set up handlers
LOGGING_LEVEL = logging.INFO
stream_handler = logging.StreamHandler(sys.stdout)
file_handler = logging.FileHandler(f"{LOG_DIR}/{created_time}.log")
format_ = ('[%(asctime)s] {%(filename)s:%(lineno)d} '
'%(levelname)s - %(message)s')

# Try to use colored formatter from coloredlogs
try:
import coloredlogs
formatter = coloredlogs.ColoredFormatter(fmt=format_)
stream_handler.setFormatter(formatter)
except Exception as err:
print(f"{err}")

handlers = [
file_handler,
stream_handler
]
logging.basicConfig(
format=format_,
level=LOGGING_LEVEL,
handlers=handlers
)
logger = logging.getLogger(__name__)

0 comments on commit 06ab997

Please sign in to comment.