bug 558613 (Add win7 only performance counter for "Modified Page Bytes Count") add Modified Page List Bytes counter to win7 only (take 2) p=anodelman r=catlee
git-svn-id: svn://10.0.0.236/trunk@260438 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
@@ -77,16 +77,22 @@ class CounterManager:
|
||||
hq = self.registeredCounters[counter][0]
|
||||
win32pdh.EnumObjects(None, None, 0, 1)
|
||||
counterListLength = len(self.registeredCounters[counter][1])
|
||||
expandedCounterPaths = \
|
||||
try:
|
||||
expandedCounterPaths = \
|
||||
win32pdh.ExpandCounterPath('\\process(%s*)\\%s' % (self.childProcess, counter))
|
||||
except:
|
||||
return
|
||||
for expandedPath in expandedCounterPaths:
|
||||
alreadyInCounterList = False
|
||||
for singleCounter in self.registeredCounters[counter][1]:
|
||||
if expandedPath == singleCounter[1]:
|
||||
alreadyInCounterList = True
|
||||
if not alreadyInCounterList:
|
||||
counterHandle = win32pdh.AddCounter(hq, expandedPath)
|
||||
self.registeredCounters[counter][1].append((counterHandle, expandedPath))
|
||||
try:
|
||||
counterHandle = win32pdh.AddCounter(hq, expandedPath)
|
||||
self.registeredCounters[counter][1].append((counterHandle, expandedPath))
|
||||
except:
|
||||
continue
|
||||
if counterListLength != len(self.registeredCounters[counter][1]):
|
||||
try:
|
||||
win32pdh.CollectQueryData(hq)
|
||||
@@ -135,13 +141,23 @@ class CounterManager:
|
||||
hc = win32pdh.AddCounter(hq, path)
|
||||
except:
|
||||
win32pdh.CloseQuery(hq)
|
||||
#assume that this is a memory counter for the system, not a process counter
|
||||
path = win32pdh.MakeCounterPath((None, 'Memory', None, None, -1 , counter))
|
||||
hq = win32pdh.OpenQuery()
|
||||
try:
|
||||
hc = win32pdh.AddCounter(hq, path)
|
||||
except:
|
||||
win32pdh.CloseQuery(hq)
|
||||
|
||||
self.registeredCounters[counter] = [hq, [(hc, path)]]
|
||||
self.updateCounterPathsForChildProcesses(counter)
|
||||
|
||||
def stopMonitor(self):
|
||||
for counter in self.registeredCounters:
|
||||
for singleCounter in self.registeredCounters[counter][1]:
|
||||
win32pdh.RemoveCounter(singleCounter[0])
|
||||
win32pdh.CloseQuery(self.registeredCounters[counter][0])
|
||||
self.registeredCounters.clear()
|
||||
try:
|
||||
for counter in self.registeredCounters:
|
||||
for singleCounter in self.registeredCounters[counter][1]:
|
||||
win32pdh.RemoveCounter(singleCounter[0])
|
||||
win32pdh.CloseQuery(self.registeredCounters[counter][0])
|
||||
self.registeredCounters.clear()
|
||||
except:
|
||||
print 'failed to stopMonitor'
|
||||
|
||||
@@ -65,6 +65,8 @@ def shortName(name):
|
||||
return "rss"
|
||||
elif name == "XRes":
|
||||
return "xres"
|
||||
elif name == "Modified Page List Bytes":
|
||||
return "modlistbytes"
|
||||
else:
|
||||
return name
|
||||
|
||||
@@ -267,7 +269,7 @@ def results_from_graph(links, results_server):
|
||||
first_results = 'RETURN:<br>'
|
||||
last_results = ''
|
||||
full_results = '\nRETURN:<p style="font-size:smaller;">Details:<br>'
|
||||
memory_metric = ['memset', 'rss', 'pbytes', 'xres']
|
||||
memory_metric = ['memset', 'rss', 'pbytes', 'xres', 'modlistbytes']
|
||||
lines = links.split('\n')
|
||||
for line in lines:
|
||||
if line == "":
|
||||
|
||||
@@ -75,8 +75,10 @@ env :
|
||||
# counters : ['Private Bytes', 'RSS']
|
||||
# Possible values on Linux:
|
||||
# counters : ['Private Bytes', 'RSS', 'XRes']
|
||||
# Standard windows values:
|
||||
# Standard winxp/vista values:
|
||||
# counters : ['Working Set', 'Private Bytes', '% Processor Time']
|
||||
# Standard w7 values:
|
||||
# counters : ['Working Set', 'Private Bytes', '% Processor Time', 'Modified Page List Bytes']
|
||||
|
||||
# to set up a new test it must have the correct configuration options and drop information in a standard format
|
||||
# the format is seen in the regular expressions in ttest.py
|
||||
@@ -89,6 +91,7 @@ tests :
|
||||
cycles : 20
|
||||
timeout: 150
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -99,6 +102,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 20
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -110,6 +114,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 20
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -121,6 +126,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 20
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -132,6 +138,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 20
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -143,6 +150,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 20
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -153,6 +161,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 20
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -163,6 +172,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 20
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : True
|
||||
@@ -172,6 +182,7 @@ tests :
|
||||
resolution : 20
|
||||
cycles : 1
|
||||
win_counters : ['Working Set', 'Private Bytes', '% Processor Time']
|
||||
w7_counters : ['Working Set', 'Private Bytes', '% Processor Time', 'Modified Page List Bytes']
|
||||
linux_counters : [ 'Private Bytes', 'RSS']
|
||||
mac_counters : [ 'Private Bytes', 'RSS']
|
||||
shutdown : True
|
||||
@@ -181,6 +192,7 @@ tests :
|
||||
resolution : 20
|
||||
cycles : 1
|
||||
win_counters : ['Working Set', 'Private Bytes', '% Processor Time']
|
||||
w7_counters : ['Working Set', 'Private Bytes', '% Processor Time', 'Modified Page List Bytes']
|
||||
linux_counters : [ 'Private Bytes', 'RSS']
|
||||
mac_counters : [ 'Private Bytes', 'RSS']
|
||||
shutdown : True
|
||||
@@ -190,6 +202,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : ['Working Set', 'Private Bytes', '% Processor Time']
|
||||
w7_counters : ['Working Set', 'Private Bytes', '% Processor Time', 'Modified Page List Bytes']
|
||||
linux_counters : [ 'Private Bytes', 'RSS']
|
||||
mac_counters : [ 'Private Bytes', 'RSS']
|
||||
shutdown : False
|
||||
@@ -199,6 +212,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -208,6 +222,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -217,6 +232,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -226,6 +242,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -235,6 +252,7 @@ tests :
|
||||
resolution : 20
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -254,6 +272,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -263,6 +282,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -272,6 +292,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -281,6 +302,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -290,6 +312,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -299,6 +322,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -308,6 +332,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
@@ -317,6 +342,7 @@ tests :
|
||||
resolution : 1
|
||||
cycles : 1
|
||||
win_counters : []
|
||||
w7_counters : []
|
||||
linux_counters : []
|
||||
mac_counters : []
|
||||
shutdown : False
|
||||
|
||||
@@ -91,8 +91,13 @@ class TTest(object):
|
||||
self.platform_type = 'linux_'
|
||||
self._ffprocess = LinuxProcess()
|
||||
elif platform.system() in ("Windows", "Microsoft"):
|
||||
if '5.1' in platform.version(): #winxp
|
||||
self.platform_type = 'win_'
|
||||
elif '6.1' in platform.version(): #w7
|
||||
self.platform_type = 'w7_'
|
||||
else:
|
||||
raise talosError('unsupported windows version')
|
||||
self.cmanager = __import__('cmanager_win32')
|
||||
self.platform_type = 'win_'
|
||||
self._ffprocess = Win32Process()
|
||||
elif platform.system() == "Darwin":
|
||||
self.cmanager = __import__('cmanager_mac')
|
||||
|
||||
Reference in New Issue
Block a user