X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fhttp_command.c;h=8ec3264deda56f1d06c1ed1387bc9eb90be7f364;hb=4dbb25eef6b8fc15f058729ab84c6d492aefb42e;hp=610daeefd31ab7c8989f4af97b915aea4c6d1195;hpb=ccb67b901140e1e67248c6a0c8f5acdeeb951dfd;p=pazpar2-moved-to-github.git diff --git a/src/http_command.c b/src/http_command.c index 610daee..8ec3264 100644 --- a/src/http_command.c +++ b/src/http_command.c @@ -820,12 +820,18 @@ static void cmd_stat(struct http_channel *c) struct statistics stat; int clients; + float progress = 0; + if (!s) return; clients = session_active_clients(s->psession); statistics(s->psession, &stat); + if (stat.num_clients > 0) { + progress = (stat.num_clients - clients) / (float)stat.num_clients; + } + wrbuf_rewind(c->wrbuf); wrbuf_puts(c->wrbuf, ""); wrbuf_printf(c->wrbuf, "%d\n", clients); @@ -838,6 +844,7 @@ static void cmd_stat(struct http_channel *c) wrbuf_printf(c->wrbuf, "%d\n", stat.num_idle); wrbuf_printf(c->wrbuf, "%d\n", stat.num_failed); wrbuf_printf(c->wrbuf, "%d\n", stat.num_error); + wrbuf_printf(c->wrbuf, "%.2f\n", progress); wrbuf_puts(c->wrbuf, ""); rs->payload = nmem_strdup(c->nmem, wrbuf_cstr(c->wrbuf)); http_send_response(c);