mirror of https://github.com/fail2ban/fail2ban
increase readability and details level by increased verbosity
parent
0fef5022f0
commit
95af3c63ac
|
@ -119,10 +119,14 @@ else:
|
|||
|
||||
# Custom log format for the verbose tests runs
|
||||
if verbosity > 1: # pragma: no cover
|
||||
stdout.setFormatter(Formatter(' %(asctime)-15s %(thread)s' + fmt))
|
||||
else: # pragma: no cover
|
||||
# just prefix with the space
|
||||
stdout.setFormatter(Formatter(fmt))
|
||||
if verbosity > 3:
|
||||
fmt = ' | %(module)15.15s-%(levelno)-2d: %(funcName)-20.20s |' + fmt
|
||||
if verbosity > 2:
|
||||
fmt = ' +%(relativeCreated)5d %(thread)X %(levelname)-5.5s' + fmt
|
||||
else:
|
||||
fmt = ' %(asctime)-15s %(thread)X %(levelname)-5.5s' + fmt
|
||||
#
|
||||
stdout.setFormatter(Formatter(fmt))
|
||||
logSys.addHandler(stdout)
|
||||
|
||||
#
|
||||
|
|
|
@ -67,7 +67,8 @@ class Server:
|
|||
self.__db = None
|
||||
self.__daemon = daemon
|
||||
self.__transm = Transmitter(self)
|
||||
self.__asyncServer = AsyncServer(self.__transm)
|
||||
#self.__asyncServer = AsyncServer(self.__transm)
|
||||
self.__asyncServer = None
|
||||
self.__logLevel = None
|
||||
self.__logTarget = None
|
||||
self.__syslogSocket = None
|
||||
|
@ -137,6 +138,7 @@ class Server:
|
|||
# Start the communication
|
||||
logSys.debug("Starting communication")
|
||||
try:
|
||||
self.__asyncServer = AsyncServer(self.__transm)
|
||||
self.__asyncServer.start(sock, force)
|
||||
except AsyncServerException, e:
|
||||
logSys.error("Could not start server: %s", e)
|
||||
|
@ -155,14 +157,17 @@ class Server:
|
|||
# communications first (which should be ok anyways since we
|
||||
# are exiting)
|
||||
# See https://github.com/fail2ban/fail2ban/issues/7
|
||||
self.__asyncServer.stop()
|
||||
if self.__asyncServer is not None:
|
||||
self.__asyncServer.stop()
|
||||
self.__asyncServer = None
|
||||
|
||||
# Now stop all the jails
|
||||
self.stopAllJail()
|
||||
|
||||
# Only now shutdown the logging.
|
||||
with self.__loggingLock:
|
||||
logging.shutdown()
|
||||
if self.__logTarget is not None:
|
||||
with self.__loggingLock:
|
||||
logging.shutdown()
|
||||
|
||||
# Restore default signal handlers:
|
||||
if _thread_name() == '_MainThread':
|
||||
|
|
|
@ -44,8 +44,8 @@ class CommandActionTest(LogCaptureTestCase):
|
|||
|
||||
def tearDown(self):
|
||||
"""Call after every test case."""
|
||||
LogCaptureTestCase.tearDown(self)
|
||||
self.__action.stop()
|
||||
LogCaptureTestCase.tearDown(self)
|
||||
|
||||
def testSubstituteRecursiveTags(self):
|
||||
aInfo = {
|
||||
|
|
|
@ -62,25 +62,18 @@ class TransmitterBase(unittest.TestCase):
|
|||
|
||||
def setUp(self):
|
||||
"""Call before every test case."""
|
||||
#super(TransmitterBase, self).setUp()
|
||||
self.transm = self.server._Server__transm
|
||||
self.tmp_files = []
|
||||
sock_fd, sock_name = tempfile.mkstemp('fail2ban.sock', 'transmitter')
|
||||
os.close(sock_fd)
|
||||
self.tmp_files.append(sock_name)
|
||||
pidfile_fd, pidfile_name = tempfile.mkstemp(
|
||||
'fail2ban.pid', 'transmitter')
|
||||
os.close(pidfile_fd)
|
||||
self.tmp_files.append(pidfile_name)
|
||||
self.server.start(sock_name, pidfile_name, force=False)
|
||||
# To test thransmitter we don't need to start server...
|
||||
#self.server.start('/dev/null', '/dev/null', force=False)
|
||||
self.jailName = "TestJail1"
|
||||
self.server.addJail(self.jailName, FAST_BACKEND)
|
||||
|
||||
def tearDown(self):
|
||||
"""Call after every test case."""
|
||||
# stop jails, etc.
|
||||
self.server.quit()
|
||||
for f in self.tmp_files:
|
||||
if os.path.exists(f):
|
||||
os.remove(f)
|
||||
#super(TransmitterBase, self).tearDown()
|
||||
|
||||
def setGetTest(self, cmd, inValue, outValue=(None,), outCode=0, jail=None, repr_=False):
|
||||
"""Process set/get commands and compare both return values
|
||||
|
@ -792,10 +785,10 @@ class TransmitterLogging(TransmitterBase):
|
|||
|
||||
def setUp(self):
|
||||
self.server = Server()
|
||||
super(TransmitterLogging, self).setUp()
|
||||
self.server.setLogTarget("/dev/null")
|
||||
self.server.setLogLevel("CRITICAL")
|
||||
self.server.setSyslogSocket("auto")
|
||||
super(TransmitterLogging, self).setUp()
|
||||
|
||||
def testLogTarget(self):
|
||||
logTargets = []
|
||||
|
@ -963,3 +956,21 @@ class LoggingTests(LogCaptureTestCase):
|
|||
sys.__excepthook__ = prev_exchook
|
||||
self.assertEqual(len(x), 1)
|
||||
self.assertEqual(x[0][0], RuntimeError)
|
||||
|
||||
def testStartFailedSockExists(self):
|
||||
tmp_files = []
|
||||
sock_fd, sock_name = tempfile.mkstemp('fail2ban.sock', 'f2b-test')
|
||||
os.close(sock_fd)
|
||||
tmp_files.append(sock_name)
|
||||
pidfile_fd, pidfile_name = tempfile.mkstemp('fail2ban.pid', 'f2b-test')
|
||||
os.close(pidfile_fd)
|
||||
tmp_files.append(pidfile_name)
|
||||
server = TestServer()
|
||||
try:
|
||||
server.start(sock_name, pidfile_name, force=False)
|
||||
self.assertLogged("Server already running")
|
||||
finally:
|
||||
server.quit()
|
||||
for f in tmp_files:
|
||||
if os.path.exists(f):
|
||||
os.remove(f)
|
||||
|
|
|
@ -325,6 +325,7 @@ class LogCaptureTestCase(unittest.TestCase):
|
|||
def tearDown(self):
|
||||
"""Call after every test case."""
|
||||
# print "O: >>%s<<" % self._log.getvalue()
|
||||
self.pruneLog()
|
||||
logSys = getLogger("fail2ban")
|
||||
logSys.handlers = self._old_handlers
|
||||
logSys.level = self._old_level
|
||||
|
|
Loading…
Reference in New Issue