I am starting to use the logging module.
Simple log to file and/or console work very nicely.
Even managed to get TimedRotatingFileHandler to work.
The problem I am trying to solve.
1. I would like to have a "log viewer" a wxPython based app to be able
to look at a log generated by another script.
Did a little test for this.
- log_testing.py attached is generating the log entries
- log_viewerConsole.py is trying to attach to the same logger (would
convert/change this to a wxPython app)
The log_viewerConsole script only sees the logs it generates. Does this
script have to be started by the first one to get the same logger?
Any hints on how to solve my problem would be very appreciated.
Werner
[formatters]
keys=simple
[handlers]
keys=consoleHandler,fileRollOver,ntEventLog
[loggers]
keys=root,frollover
[formatter_simple]
format=%(name)s:%(levelname)s %(module)s: %(lineno)d: %(asctime)s: %(message)s
[handler_consoleHandler]
class=StreamHandler
args=[]
formatter=simple
[handler_fileRollOver]
class=handlers.TimedRotatingFileHandler
args=['./logs/pyg_log.txt', 'M', 30, 5]
formatter=simple
[handler_ntEventLog]
class=handlers.SysLogHandler
args=[("localhost",handlers.SYSLOG_UDP_PORT),handlers.SysLogHandler.LOG_USER]
formatter=simple
[logger_root]
level=DEBUG
handlers=ntEventLog
[logger_frollover]
level=DEBUG
handlers=fileRollOver
qualname=loggerFRO
import logging, logging.config, logging.handlers
import time
# setup logging
logging.config.fileConfig('pyg_log.cfg')
# create logger
logger = logging.getLogger("loggerFRO")
while 1:
#"application" code
logger.debug("debug message")
logger.info("info message")
logger.warn("warn message")
logger.error("error message")
logger.critical("critical message")
try:
x = 1 / 0
except:
logger.exception('exception')
logger.info("sleeping")
time.sleep(5)
logger.info("done sleeping")
import logging, logging.config
import time
logging.config.fileConfig('pyg_log.cfg')
# create logger
logger = logging.getLogger("loggerFRO")
# handler
streamHandler = logging.StreamHandler()
# formater
formatter = logging.Formatter("%(name)s - %(levelname)s - %(message)s")
streamHandler.setFormatter(formatter)
logger.addHandler(streamHandler)
logger.info('just a test message')
while 1:
time.sleep(1)
logger.info('slept 1')
--
http://mail.python.org/mailman/listinfo/python-list