From 6b1d9b6180c791f3710fa6f0020ed8801954ef82 Mon Sep 17 00:00:00 2001 From: Cyril Jaquier <cyril.jaquier@fail2ban.org> Date: Wed, 6 Sep 2006 19:31:23 +0000 Subject: [PATCH] - Added benchmark git-svn-id: https://fail2ban.svn.sourceforge.net/svnroot/fail2ban/trunk@330 a942ae1a-1317-0410-a47c-b1dcaea8d605 --- fail2ban-regex | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/fail2ban-regex b/fail2ban-regex index be3f8223..6aab952b 100755 --- a/fail2ban-regex +++ b/fail2ban-regex @@ -25,7 +25,7 @@ __date__ = "$Date: 2006-08-23 21:53:09 +0200 (Wed, 23 Aug 2006) $" __copyright__ = "Copyright (c) 2004 Cyril Jaquier" __license__ = "GPL" -import locale, getopt, sys, time +import locale, getopt, sys, time, logging # Inserts our own modules path first in the list # fix for bug #343821 @@ -66,6 +66,29 @@ class Fail2banRegex: for i in ret: ipList = ipList + " " + i[0] print "IP :" + ipList + print + print "Benchmark. Executing 1000..." + total = 0 + maxValue = 0 + maxPos = 0 + minValue = 99999999 + minPos = 0 + for i in range(1000): + start = time.time() + ret = self.filter.findFailure(line) + end = time.time() + diff = (end - start) * 1000 + total = total + diff + minValue = min(minValue, diff) + if minValue == diff: + minPos = i + maxValue = max(maxValue, diff) + if maxValue == diff: + maxPos = i + print "Performance" + print "Avg: " + `total / 1000` + " ms" + print "Max: " + `maxValue` + " ms (Run " + `maxPos` + ")" + print "Min: " + `minValue` + " ms (Run " + `minPos` + ")" return True if __name__ == "__main__":