From: Amos Jeffries Date: Sat, 11 Jul 2009 09:22:11 +0000 (+1200) Subject: Additional info for stateful helper status page X-Git-Tag: SQUID_3_2_0_1~741^2~22 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=233b0db14fc8ab4272167cfd0fe4e9dff9d81120;p=thirdparty%2Fsquid.git Additional info for stateful helper status page - split R and D states. - clarify meaning of S (pending! not completed) state - add time spent in reserved state --- diff --git a/src/helper.cc b/src/helper.cc index 354f7a6927..d8269a79c3 100644 --- a/src/helper.cc +++ b/src/helper.cc @@ -625,9 +625,9 @@ helperStatefulStats(StoreEntry * sentry, statefulhelper * hlp, const char *label for (dlink_node *link = hlp->servers.head; link; link = link->next) { helper_stateful_server *srv = (helper_stateful_server *)link->data; - double tt = 0.001 * tvSubMsec(srv->dispatch_time, - srv->flags.busy ? current_time : srv->answer_time); - storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%20d\t%c%c%c%c%c\t%7.3f\t%7d\t%s\n", + double tt = 0.001 * tvSubMsec(srv->dispatch_time, srv->flags.busy ? current_time : srv->answer_time); + double tr = 0.001 * tvSubMsec(srv->dispatch_time, current_time); + storeAppendPrintf(sentry, "%7d\t%7d\t%7d\t%11d\t%20d\t%c%c%c%c%c%c\t%7.3f\t%7.3f\t%7d\t%s\n", srv->index + 1, srv->rfd, srv->pid, @@ -635,19 +635,22 @@ helperStatefulStats(StoreEntry * sentry, statefulhelper * hlp, const char *label (int) srv->deferred_requests, srv->flags.busy ? 'B' : ' ', srv->flags.closing ? 'C' : ' ', - srv->flags.reserved == S_HELPER_RESERVED ? 'R' : (srv->flags.reserved == S_HELPER_DEFERRED ? 'D' : ' '), + srv->flags.reserved == S_HELPER_RESERVED ? 'R' : ' ', + srv->flags.reserved == S_HELPER_DEFERRED ? 'D' : ' ', srv->flags.shutdown ? 'S' : ' ', srv->request ? (srv->request->placeholder ? 'P' : ' ') : ' ', - tt < 0.0 ? 0.0 : tt, - (int) srv->roffset, - srv->request ? log_quote(srv->request->buf) : "(none)"); + tt < 0.0 ? 0.0 : tt, + srv->flags.reserved == S_HELPER_RESERVED || srv->flags.reserved != S_HELPER_DEFERRED || tr > 0.0 ? tr : 0.0, + (int) srv->roffset, + srv->request ? log_quote(srv->request->buf) : "(none)"); } storeAppendPrintf(sentry, "\nFlags key:\n\n"); storeAppendPrintf(sentry, " B = BUSY\n"); storeAppendPrintf(sentry, " C = CLOSING\n"); - storeAppendPrintf(sentry, " R = RESERVED or DEFERRED\n"); - storeAppendPrintf(sentry, " S = SHUTDOWN\n"); + storeAppendPrintf(sentry, " R = RESERVED\n"); + storeAppendPrintf(sentry, " R = DEFERRED\n"); + storeAppendPrintf(sentry, " S = SHUTDOWN PENDING\n"); storeAppendPrintf(sentry, " P = PLACEHOLDER\n"); }