[CalendarServer-changes] [6589] CalDAVTester/trunk/src
source_changes at macosforge.org
source_changes at macosforge.org
Wed Nov 10 15:21:15 PST 2010
Revision: 6589
http://trac.macosforge.org/projects/calendarserver/changeset/6589
Author: cdaboo at apple.com
Date: 2010-11-10 15:21:12 -0800 (Wed, 10 Nov 2010)
Log Message:
-----------
Add option to print the count of statement lines in a postgres log file for each test and test-suite.
Modified Paths:
--------------
CalDAVTester/trunk/src/caldavtest.py
CalDAVTester/trunk/src/manager.py
Modified: CalDAVTester/trunk/src/caldavtest.py
===================================================================
--- CalDAVTester/trunk/src/caldavtest.py 2010-11-10 20:01:28 UTC (rev 6588)
+++ CalDAVTester/trunk/src/caldavtest.py 2010-11-10 23:21:12 UTC (rev 6589)
@@ -26,6 +26,7 @@
from src.request import stats
from src.testsuite import testsuite
from xml.etree.ElementTree import ElementTree, tostring
+import commands
import rfc822
import socket
import src.xmlDefs
@@ -104,6 +105,7 @@
ignored = len(suite.tests)
else:
self.manager.log(manager.LOG_HIGH, "")
+ postgresCount = self.postgresInit()
if self.manager.memUsage:
start_usage = self.manager.getMemusage()
etags = {}
@@ -120,6 +122,7 @@
print start_usage, end_usage
self.manager.log(manager.LOG_HIGH, "Mem. Usage: RSS=%s%% VSZ=%s%%" % (str(((end_usage[1] - start_usage[1]) * 100)/start_usage[1]), str(((end_usage[0] - start_usage[0]) * 100)/start_usage[0])))
self.manager.log(manager.LOG_HIGH, "Suite Results: %d PASSED, %d FAILED, %d IGNORED" % (ok, failed, ignored), before=1, indent=4)
+ self.postgresResult(postgresCount, indent=4)
return (ok, failed, ignored)
def run_test( self, test, etags, label = "" ):
@@ -136,6 +139,7 @@
else:
result = False
resulttxt = ""
+ postgresCount = self.postgresInit()
if test.stats:
reqstats = stats()
else:
@@ -152,6 +156,7 @@
if result and test.stats:
self.manager.log(manager.LOG_MEDIUM, "Total Time: %.3f secs" % (reqstats.totaltime,), indent=8)
self.manager.log(manager.LOG_MEDIUM, "Average Time: %.3f secs" % (reqstats.totaltime/reqstats.count,), indent=8)
+ self.postgresResult(postgresCount, indent=8)
return ["f", "t"][result]
def dorequests( self, description, list, doverify = True, forceverify = False, label = "" ):
@@ -662,3 +667,18 @@
return e.text
else:
return None
+
+ def postgresInit(self):
+ """
+ Initialize postgres statement counter
+ """
+ if self.manager.postgresLog:
+ return int(commands.getoutput("grep \"LOG: statement:\" %s | wc -l" % (self.manager.postgresLog,)))
+ else:
+ return 0
+
+ def postgresResult(self, startCount, indent):
+
+ if self.manager.postgresLog:
+ newCount = int(commands.getoutput("grep \"LOG: statement:\" %s | wc -l" % (self.manager.postgresLog,)))
+ self.manager.log(manager.LOG_HIGH, "Postgres Stataments: %d" % (newCount - startCount,), indent=indent)
Modified: CalDAVTester/trunk/src/manager.py
===================================================================
--- CalDAVTester/trunk/src/manager.py 2010-11-10 20:01:28 UTC (rev 6588)
+++ CalDAVTester/trunk/src/manager.py 2010-11-10 23:21:12 UTC (rev 6589)
@@ -58,6 +58,7 @@
self.logLevel = level
self.logFile = log_file
self.digestCache = {}
+ self.postgresLog = ""
def log(self, level, str, indent = 0, indentStr = " ", after = 1, before = 0):
if self.textMode and level <= self.logLevel:
@@ -148,7 +149,7 @@
pidfile = "../CalendarServer/logs/caldavd.pid"
random_order = False
random_seed = str(random.randint(0, 1000000))
- options, args = getopt.getopt(sys.argv[1:], "s:p:dmx:", ["all", "subdir=", "exclude=", "pid=", "random", "random-seed="])
+ options, args = getopt.getopt(sys.argv[1:], "s:p:dmx:", ["all", "subdir=", "exclude=", "pid=", "postgres-log=", "random", "random-seed="])
# Process single options
for option, value in options:
@@ -170,6 +171,8 @@
self.memUsage = True
elif option == "--pid":
pidfile = value
+ elif option == "--postgres-log":
+ self.postgresLog = value
elif option == "--random":
random_order = True
elif option == "--random-seed":
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20101110/f370edeb/attachment.html>
More information about the calendarserver-changes
mailing list