From: Willy Tarreau Date: Sun, 29 Mar 2009 12:46:01 +0000 (+0200) Subject: [MINOR] stats/html: group digits by 3 to clarify numbers X-Git-Tag: v1.3.17~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0a6d2efc45359e1a5a1583bc0f3d5ec9c1f1d3c1;p=thirdparty%2Fhaproxy.git [MINOR] stats/html: group digits by 3 to clarify numbers Large stats numbers are more readable if there is a small space between groups of 3 digits. --- diff --git a/src/dumpstats.c b/src/dumpstats.c index f7a011fa28..34b808191b 100644 --- a/src/dumpstats.c +++ b/src/dumpstats.c @@ -433,6 +433,7 @@ int stats_dump_http(struct session *s, struct buffer *rep, struct uri_auth *uri) ".backup4 {background: #c060ff;}\n" /* NOLB state shows same as going down */ ".backup5 {background: #90b0e0;}\n" /* NOLB state shows same as going down */ ".backup6 {background: #e0e0e0;}\n" + ".rls {letter-spacing: 0.3em;}\n" /* right letter spacing (used for grouping digits) */ "table.tbl { border-collapse: collapse; border-style: none;}\n" "table.tbl td { border-width: 1px 1px 1px 1px; border-style: solid solid solid solid; padding: 2px 3px; border-color: gray;}\n" "table.tbl th { border-width: 1px; border-style: solid solid solid solid; border-color: gray;}\n" @@ -696,15 +697,21 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri) /* name, queue */ "Frontend" /* sessions : current, max, limit, rate, total, lbtot */ - "%d%d" - "%d%d" - "%d" + "%s%s" + "%s%s" + "%s" /* bytes : in, out */ - "%lld%lld" + "%s%s" + "", + U2H0(px->feconn), U2H1(px->feconn_max), U2H2(px->maxconn), + U2H3(read_freq_ctr(&px->fe_sess_per_sec)), U2H4(px->cum_feconn), + U2H5(px->bytes_in), U2H6(px->bytes_out)); + + chunk_printf(&msg, sizeof(trash), /* denied: req, resp */ - "%d%d" + "%s%s" /* errors : request, connect, response */ - "%d" + "%s" /* warnings: retries, redispatches */ "" /* server status : reflect frontend status */ @@ -712,11 +719,8 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri) /* rest of server: nothing */ "" "", - px->feconn, px->feconn_max, px->maxconn, - read_freq_ctr(&px->fe_sess_per_sec), px->cum_feconn, - px->bytes_in, px->bytes_out, - px->denied_req, px->denied_resp, - px->failed_req, + U2H0(px->denied_req), U2H1(px->denied_resp), + U2H2(px->failed_req), px->state == PR_STRUN ? "OPEN" : px->state == PR_STIDLE ? "FULL" : "STOP"); } else { @@ -815,29 +819,32 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri) /* name */ "%s" /* queue : current, max, limit */ - "%d%d%s" + "%s%s%s" /* sessions : current, max, limit, rate, total, lbtot */ - "%d%d" - "%s%d" - "%d%d" + "%s%s" + "%s%s" + "%s%s" + "", + (sv->state & SRV_BACKUP) ? "backup" : "active", + sv_state, sv->id, + U2H0(sv->nbpend), U2H1(sv->nbpend_max), LIM2A2(sv->maxqueue, "-"), + U2H3(sv->cur_sess), U2H4(sv->cur_sess_max), LIM2A5(sv->maxconn, "-"), + U2H6(read_freq_ctr(&sv->sess_per_sec)), + U2H7(sv->cum_sess), U2H8(sv->cum_lbconn)); + + chunk_printf(&msg, sizeof(trash), /* bytes : in, out */ - "%lld%lld" + "%s%s" /* denied: req, resp */ - "%d" + "%s" /* errors : request, connect, response */ - "%d%d\n" + "%s%s\n" /* warnings: retries, redispatches */ "%u%u" "", - (sv->state & SRV_BACKUP) ? "backup" : "active", - sv_state, sv->id, - sv->nbpend, sv->nbpend_max, LIM2A0(sv->maxqueue, "-"), - sv->cur_sess, sv->cur_sess_max, LIM2A1(sv->maxconn, "-"), - read_freq_ctr(&sv->sess_per_sec), - sv->cum_sess, sv->cum_lbconn, - sv->bytes_in, sv->bytes_out, - sv->failed_secu, - sv->failed_conns, sv->failed_resp, + U2H0(sv->bytes_in), U2H1(sv->bytes_out), + U2H2(sv->failed_secu), + U2H3(sv->failed_conns), U2H4(sv->failed_resp), sv->retries, sv->redispatches); /* status */ @@ -872,7 +879,7 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri) human_time(srv_downtime(sv), 1)); else if (sv != svs) chunk_printf(&msg, sizeof(trash), - "via %s/%s", svs->proxy->id, svs->id ); + "via %s/%s", svs->proxy->id, svs->id); else chunk_printf(&msg, sizeof(trash), ""); @@ -993,17 +1000,25 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri) /* name */ "Backend" /* queue : current, max */ - "%d%d" + "%s%s" /* sessions : current, max, limit, rate, total, lbtot */ - "%d%d" - "%d%d" - "%d%d" + "%s%s" + "%s%s" + "%s%s" /* bytes : in, out */ - "%lld%lld" + "%s%s" + "", + U2H0(px->nbpend) /* or px->totpend ? */, U2H1(px->nbpend_max), + U2H2(px->beconn), U2H3(px->beconn_max), U2H4(px->fullconn), + U2H5(read_freq_ctr(&px->be_sess_per_sec)), + U2H6(px->cum_beconn), U2H7(px->cum_lbconn), + U2H8(px->bytes_in), U2H9(px->bytes_out)); + + chunk_printf(&msg, sizeof(trash), /* denied: req, resp */ - "%d%d" + "%s%s" /* errors : request, connect, response */ - "%d%d\n" + "%s%s\n" /* warnings: retries, redispatches */ "%u%u" /* backend status: reflect backend status (up/down): we display UP @@ -1011,14 +1026,10 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri) * all (eg: for stats). Then we display the total weight, number of * active and backups. */ "%s %s%d" - "%d%d", - px->nbpend /* or px->totpend ? */, px->nbpend_max, - px->beconn, px->beconn_max, px->fullconn, - read_freq_ctr(&px->be_sess_per_sec), - px->cum_beconn, px->cum_lbconn, - px->bytes_in, px->bytes_out, - px->denied_req, px->denied_resp, - px->failed_conns, px->failed_resp, + "%d%d" + "", + U2H0(px->denied_req), U2H1(px->denied_resp), + U2H2(px->failed_conns), U2H3(px->failed_resp), px->retries, px->redispatches, human_time(now.tv_sec - px->last_change, 1), (px->lbprm.tot_weight > 0 || !px->srv) ? "UP" :