Source code for zengine.tornado_server.get_logger

# -*-  coding: utf-8 -*-
"""
"""

# Copyright (C) 2015 ZetaOps Inc.
#
# This file is licensed under the GNU General Public License v3
# (GPLv3).  See LICENSE.txt for details.
import logging
import os


[docs]def get_logger(settings): # create logger logger = logging.getLogger(os.path.basename(settings.LOG_FILE).split('.')[0]) logger.setLevel(getattr(logging, settings.LOG_LEVEL)) logger.propagate = False # create console handler and set level to debug if settings.LOG_HANDLER == 'file': ch = logging.FileHandler(filename=settings.LOG_FILE, mode="w") else: ch = logging.StreamHandler() # ch.setLevel(logging.DEBUG) # create formatter if settings.DEBUG: # make log messages more readable at development format_str = '%(asctime)s - %(filename)s:%(lineno)d %(module)s.%(funcName)s \n> %(message)s\n\n' else: format_str = '%(asctime)s - %(process)d - %(pathname)s:%(lineno)d [%(module)s > %(funcName)s] - %(name)s - %(levelname)s - %(message)s' formatter = logging.Formatter(format_str) # add formatter to ch ch.setFormatter(formatter) # add ch to logger logger.addHandler(ch) return logger