diff options
author | zhaolei <zhaolei> | 2007-10-11 08:20:39 +0000 |
---|---|---|
committer | zhaolei <zhaolei> | 2007-10-11 08:20:39 +0000 |
commit | abb3d720eaf5691d8f20237f8832a7ed22d9aead (patch) | |
tree | 5803a4bd3315a586df388aac95a599e91b17dbe3 /tapset/queue_stats.stp | |
parent | 6ff8c5cc81c6a7a843c20061e9a9b50d5b0a051f (diff) | |
download | systemtap-steved-abb3d720eaf5691d8f20237f8832a7ed22d9aead.tar.gz systemtap-steved-abb3d720eaf5691d8f20237f8832a7ed22d9aead.tar.xz systemtap-steved-abb3d720eaf5691d8f20237f8832a7ed22d9aead.zip |
2007-10-11 Zhaolei <zhaolei@cn.fujitsu.com>
* queue_stats.stp (qsq_utilization): Update queue account datas
before calculate.
(qsq_blocked): Ditto.
(qsq_wait_queue_length): Ditto.
(qsq_service_time): Ditto.
(qsq_wait_time): Ditto.
(qsq_throughput): Ditto.
Diffstat (limited to 'tapset/queue_stats.stp')
-rw-r--r-- | tapset/queue_stats.stp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tapset/queue_stats.stp b/tapset/queue_stats.stp index 9d89903c..5cf24c40 100644 --- a/tapset/queue_stats.stp +++ b/tapset/queue_stats.stp @@ -70,35 +70,41 @@ function qsq_start (qname) { # reset statistics for new baseline # fraction of time that any request was being serviced function qsq_utilization (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_rtime[qname]) / elapsed } # fraction of time that any request was blocked in the wait queue function qsq_blocked (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_wtime[qname]) / elapsed } # length of wait queue function qsq_wait_queue_length (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_wlentime[qname]) / elapsed } # service time (amount of time per request service) function qsq_service_time (qname, scale) { + _qs_update (qname) return (scale * qs_rlentime[qname]) / qs_dcount[qname] } # wait time (amount of time in queue + service per request) function qsq_wait_time (qname, scale) { + _qs_update (qname) return (scale * (qs_rlentime[qname] + qs_wlentime[qname])) / qs_dcount[qname] } # service rate (number of requests served per unit time) function qsq_throughput (qname, scale) { + _qs_update (qname) elapsed = qs_time() - qs_stime[qname] return (scale * qs_dcount[qname]) / elapsed } |