#!/usr/bin/env python
+"""
+
+`Loggers` is a collection of logggers for :class:`~moe.eval.Eval`, initializing 4 subloggers (see class description).
+
+Use as `e.log.debug(...)` for main log that goes both to `test` and `main` log,
+`e.log.test.debug(...)` for individual logs.
+
+.. :data:: DDEBUG = 5
+ Very verbose debugging level
+
+"""
+
+
import sys, os
import logging
-from logging import Logger, StreamHandler
+from logging import Logger, StreamHandler, Formatter
+
+logging.addLevelName(5,'DDEBUG')
class Loggers(Logger):
self.test_file = None
# user progress logger
self.user = Logger('user')
- self.eval.addHandler(StreamHandler(self.orig_stdout_file))
+ self.user.addHandler(StreamHandler(self.orig_stdout_file))
self.addHandler(self.test)
self.addHandler(self.eval)
def close_test_log(self):
"""Close per-test logfile, leaving only the null handler."""
if self.test_handler:
- self.test.info('Closing logfile' % filename)
+ self.test.info('Closing test logfile')
self.test.removeHandler(self.test_handler)
self.test_handler = None
self.test_file.close()