ich bin grade an einem neuen projekt und frage mich ob ich das logging system aus meinem letzten projekt übernehmen soll.
ich nutze den NEtzwerk-Logger aus
http://docs.python.org/lib/network-logging.html
dazu gibts das modul socket_logging.socket_logger_client:
(stellt einen root-logger zur verfügung der sich mit dem server unterhalten kann)
Code: Alles auswählen
import logging, logging.handlers
rootLogger = logging.getLogger('')
rootLogger.setLevel(logging.DEBUG)
socketHandler = logging.handlers.SocketHandler('localhost', logging.handlers.DEFAULT_TCP_LOGGING_PORT)
rootLogger.addHandler(socketHandler)
logging.info('Logger initialized')
in einem modul definiere ich dann für alle module jeweils einen logger um zentral die log-levels einstellen zu können, modul logger_provider:
Code: Alles auswählen
import logging, socket_logging.socket_logger_client
socket_logging.socket_logger_client.rootLogger.setLevel(logging.DEBUG)
#get loggers for each module
logger_module_1 = logging.getLogger('module_1')
#(...)
logger_module_n = logging.getLogger('module_n')
#set log level for each module
logger_module_1.setLevel(logging.INFO)
#(...)
logger_module_n.setLevel(logging.DEBUG)
Code: Alles auswählen
from logger_provider import logger_module_i as logger
ist das zu umständlich? wie macht ihr das?