aboutsummaryrefslogtreecommitdiffstats
path: root/debug_toolbar/panels/timer.py
diff options
context:
space:
mode:
authorYann Malet2011-09-10 02:25:53 +0200
committerYann Malet2011-09-10 02:25:53 +0200
commitdddfb118720733a0956440663d659653875b2dd9 (patch)
treeec2dc3bbf075ae9a3e221d9ba10603e948b1d463 /debug_toolbar/panels/timer.py
parent77e3a4ab3301df41f35866bd3b8ee16136bc98fe (diff)
downloaddjango-debug-toolbar-dddfb118720733a0956440663d659653875b2dd9.tar.bz2
Apply the same changes to the timer panel
Diffstat (limited to 'debug_toolbar/panels/timer.py')
-rw-r--r--debug_toolbar/panels/timer.py64
1 files changed, 36 insertions, 28 deletions
diff --git a/debug_toolbar/panels/timer.py b/debug_toolbar/panels/timer.py
index d866166..ef32988 100644
--- a/debug_toolbar/panels/timer.py
+++ b/debug_toolbar/panels/timer.py
@@ -27,10 +27,38 @@ class TimerDebugPanel(DebugPanel):
self._start_rusage = resource.getrusage(resource.RUSAGE_SELF)
def process_response(self, request, response):
- self.total_time = (time.time() - self._start_time) * 1000
+ total_time = (time.time() - self._start_time) * 1000
if self.has_resource:
self._end_rusage = resource.getrusage(resource.RUSAGE_SELF)
+ utime = 1000 * self._elapsed_ru('ru_utime')
+ stime = 1000 * self._elapsed_ru('ru_stime')
+ vcsw = self._elapsed_ru('ru_nvcsw')
+ ivcsw = self._elapsed_ru('ru_nivcsw')
+ minflt = self._elapsed_ru('ru_minflt')
+ majflt = self._elapsed_ru('ru_majflt')
+# these are documented as not meaningful under Linux. If you're running BSD
+# feel free to enable them, and add any others that I hadn't gotten to before
+# I noticed that I was getting nothing but zeroes and that the docs agreed. :-(
+#
+# blkin = self._elapsed_ru('ru_inblock')
+# blkout = self._elapsed_ru('ru_oublock')
+# swap = self._elapsed_ru('ru_nswap')
+# rss = self._end_rusage.ru_maxrss
+# srss = self._end_rusage.ru_ixrss
+# urss = self._end_rusage.ru_idrss
+# usrss = self._end_rusage.ru_isrss
+
+ self.stats = {
+ 'total_time': total_time,
+ 'utime': utime,
+ 'stime': stime,
+ 'vcsw': vcsw,
+ 'ivcsw': ivcsw,
+ 'minflt': minflt,
+ 'majflt': majflt,
+ }
+
def nav_title(self):
return _('Time')
@@ -39,9 +67,9 @@ class TimerDebugPanel(DebugPanel):
if self.has_resource:
utime = self._end_rusage.ru_utime - self._start_rusage.ru_utime
stime = self._end_rusage.ru_stime - self._start_rusage.ru_stime
- return 'CPU: %0.2fms (%0.2fms)' % ((utime + stime) * 1000.0, self.total_time)
+ return 'CPU: %0.2fms (%0.2fms)' % ((utime + stime) * 1000.0, self.stats['total_time'])
else:
- return 'TOTAL: %0.2fms' % (self.total_time)
+ return 'TOTAL: %0.2fms' % (self.stats[total_time])
def title(self):
return _('Resource Usage')
@@ -53,33 +81,13 @@ class TimerDebugPanel(DebugPanel):
return getattr(self._end_rusage, name) - getattr(self._start_rusage, name)
def content(self):
-
- utime = 1000 * self._elapsed_ru('ru_utime')
- stime = 1000 * self._elapsed_ru('ru_stime')
- vcsw = self._elapsed_ru('ru_nvcsw')
- ivcsw = self._elapsed_ru('ru_nivcsw')
- minflt = self._elapsed_ru('ru_minflt')
- majflt = self._elapsed_ru('ru_majflt')
-
-# these are documented as not meaningful under Linux. If you're running BSD
-# feel free to enable them, and add any others that I hadn't gotten to before
-# I noticed that I was getting nothing but zeroes and that the docs agreed. :-(
-#
-# blkin = self._elapsed_ru('ru_inblock')
-# blkout = self._elapsed_ru('ru_oublock')
-# swap = self._elapsed_ru('ru_nswap')
-# rss = self._end_rusage.ru_maxrss
-# srss = self._end_rusage.ru_ixrss
-# urss = self._end_rusage.ru_idrss
-# usrss = self._end_rusage.ru_isrss
-
# TODO l10n on values
rows = (
- (_('User CPU time'), '%0.3f msec' % utime),
- (_('System CPU time'), '%0.3f msec' % stime),
- (_('Total CPU time'), '%0.3f msec' % (utime + stime)),
- (_('Elapsed time'), '%0.3f msec' % self.total_time),
- (_('Context switches'), '%d voluntary, %d involuntary' % (vcsw, ivcsw)),
+ (_('User CPU time'), '%0.3f msec' % self.stats['utime']),
+ (_('System CPU time'), '%0.3f msec' % self.stats['stime']),
+ (_('Total CPU time'), '%0.3f msec' % (self.stats['utime'] + self.stats['stime'])),
+ (_('Elapsed time'), '%0.3f msec' % self.stats['total_time']),
+ (_('Context switches'), '%d voluntary, %d involuntary' % (self.stats['vcsw'], self.stats['ivcsw'])),
# ('Memory use', '%d max RSS, %d shared, %d unshared' % (rss, srss, urss + usrss)),
# ('Page faults', '%d no i/o, %d requiring i/o' % (minflt, majflt)),
# ('Disk operations', '%d in, %d out, %d swapout' % (blkin, blkout, swap)),