diff --git a/CHANGES b/CHANGES index 1e26ed7786..c7e8a37b6f 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,10 @@ -*- coding: utf-8 -*- Changes with Apache 2.5.1 + *) mod_proxy: Improve the balancer member data shown in mod_status when + "ProxyStatus" is "On": add "busy" count and show byte counts in auto + mode always in units of kilobytes. [Rainer Jung] + *) mod_proxy: If ProxyPassReverse is used for reverse mapping of relative redirects, subsequent ProxyPassReverse statements, whether they are relative or absolute, may fail. PR 60408. [Peter Haworth ] diff --git a/modules/proxy/mod_proxy.c b/modules/proxy/mod_proxy.c index ab252a3092..d754f7b09e 100644 --- a/modules/proxy/mod_proxy.c +++ b/modules/proxy/mod_proxy.c @@ -2876,7 +2876,7 @@ static int proxy_status_hook(request_rec *r, int flags) ap_rputs("\n\n" "" "" - "" + "" "\n", r); } else { @@ -2894,8 +2894,10 @@ static int proxy_status_hook(request_rec *r, int flags) ap_rvputs(r, "", (float)((*worker)->s->lbfactor)/100.0); ap_rprintf(r, "", (*worker)->s->lbset); - ap_rprintf(r, "", (*worker)->s->elected); + ap_rprintf(r, "
SchHostStatRouteRedirFSetAccWrRdFSetAccBusyWrRd
", (*worker)->s->redirect, NULL); ap_rprintf(r, "%.2f%d%" APR_SIZE_T_FMT "", + ap_rprintf(r, "%" APR_SIZE_T_FMT "%" APR_SIZE_T_FMT "", + (*worker)->s->busy); ap_rputs(apr_strfsize((*worker)->s->transferred, fbuf), r); ap_rputs("", r); ap_rputs(apr_strfsize((*worker)->s->read, fbuf), r); @@ -2912,10 +2914,16 @@ static int proxy_status_hook(request_rec *r, int flags) ap_rprintf(r, "ProxyBalancer[%d]Worker[%d]Elected: %" APR_SIZE_T_FMT "\n", i, n, (*worker)->s->elected); - ap_rprintf(r, "ProxyBalancer[%d]Worker[%d]Sent: %s\n", - i, n, apr_strfsize((*worker)->s->transferred, fbuf)); - ap_rprintf(r, "ProxyBalancer[%d]Worker[%d]Rcvd: %s\n", - i, n, apr_strfsize((*worker)->s->read, fbuf)); + ap_rprintf(r, "ProxyBalancer[%d]Worker[%d]Busy: %" + APR_SIZE_T_FMT "\n", + i, n, (*worker)->s->busy); + ap_rprintf(r, "ProxyBalancer[%d]Worker[%d]Sent: %" + APR_OFF_T_FMT "K\n", + i, n, (*worker)->s->transferred >> 10); + ap_rprintf(r, "ProxyBalancer[%d]Worker[%d]Rcvd: %" + APR_OFF_T_FMT "K\n", + i, n, (*worker)->s->read >> 10); + /* TODO: Add the rest of dynamic worker data */ }