def testFilterDuration(self): self._checkLogCount(1, 1) self._checkLogCount(3, 3) regex = 'GET (/[^/ ?#]+)*/system/version[/ ?#]' # log every third version request filter_logging.addLoggingFilter(regex, duration=3) self._checkLogCount(1, 1) self._checkLogCount(3, 1, duration=[0, 0, 3.1]) self._checkLogCount(2, 0, duration=[0, 0]) self._checkLogCount(1, 1, duration=[3.1]) self.assertTrue(filter_logging.removeLoggingFilter(regex)) self._checkLogCount(2, 2, duration=[0, 0]) self.assertFalse(filter_logging.removeLoggingFilter(regex))
def testFilter(self): self._checkLogCount(1, 1) self._checkLogCount(3, 3) regex = 'GET (/[^/ ?#]+)*/system/version[/ ?#]' # log every third version request filter_logging.addLoggingFilter(regex, 3) self._checkLogCount(3, 1) self._checkLogCount(2, 0) self._checkLogCount(1, 1) filter_logging.addLoggingFilter(regex, 5) self._checkLogCount(10, 2) self.assertTrue(filter_logging.removeLoggingFilter(regex)) self._checkLogCount(2, 2) self.assertFalse(filter_logging.removeLoggingFilter(regex))
def testFilterFrequency(self): self._checkLogCount(1, 1) self._checkLogCount(3, 3) regex = 'GET (/[^/ ?#]+)*/system/version[/ ?#]' # log every third version request filter_logging.addLoggingFilter(regex, 3) self._checkLogCount(3, 1) self._checkLogCount(2, 0) self._checkLogCount(1, 1) filter_logging.addLoggingFilter(regex, 5) self._checkLogCount(10, 2) self.assertTrue(filter_logging.removeLoggingFilter(regex)) self._checkLogCount(2, 2) self.assertFalse(filter_logging.removeLoggingFilter(regex))
def testMultipleHandlers(self): logRoot = config.getConfig()['logging']['log_root'] logFile = os.path.join(logRoot, 'second.log') fh = logging.FileHandler(logFile) cherrypy.log.access_log.addHandler(fh) self._checkLogCount(1, 1, logFile) self._checkLogCount(3, 3, logFile) regex = 'GET (/[^/ ?#]+)*/system/version[/ ?#]' # log every third version request filter_logging.addLoggingFilter(regex, 3) self._checkLogCount(3, 1, logFile) self._checkLogCount(2, 0, logFile) self._checkLogCount(1, 1, logFile) filter_logging.addLoggingFilter(regex, 5) self._checkLogCount(10, 2, logFile) self.assertTrue(filter_logging.removeLoggingFilter(regex)) self._checkLogCount(2, 2, logFile)