diff --git a/include/types/proxy.h b/include/types/proxy.h
index b10fc1034..71a523046 100644
--- a/include/types/proxy.h
+++ b/include/types/proxy.h
@@ -225,8 +225,8 @@ struct proxy {
unsigned int beconn, beconn_max; /* # of active backend sessions */
struct freq_ctr fe_sess_per_sec; /* sessions per second on the frontend */
struct freq_ctr be_sess_per_sec; /* sessions per second on the backend */
- unsigned int cum_feconn, cum_beconn; /* cumulated number of processed sessions */
- unsigned int cum_lbconn; /* cumulated number of sessions processed by load balancing */
+ long long cum_feconn, cum_beconn; /* cumulated number of processed sessions */
+ long long cum_lbconn; /* cumulated number of sessions processed by load balancing */
unsigned int maxconn; /* max # of active sessions on the frontend */
unsigned int fe_maxsps; /* max # of new sessions per second on the frontend */
unsigned int fullconn; /* #conns on backend above which servers are used at full load */
@@ -238,10 +238,10 @@ struct proxy {
unsigned down_time; /* total time the proxy was down */
time_t last_change; /* last time, when the state was changed */
- unsigned failed_conns, failed_resp; /* failed connect() and responses */
- unsigned retries, redispatches; /* retried and redispatched connections */
- unsigned denied_req, denied_resp; /* blocked requests/responses because of security concerns */
- unsigned failed_req; /* failed requests (eg: invalid or timeout) */
+ long long failed_conns, failed_resp; /* failed connect() and responses */
+ long long retries, redispatches; /* retried and redispatched connections */
+ long long denied_req, denied_resp; /* blocked requests/responses because of security concerns */
+ long long failed_req; /* failed requests (eg: invalid or timeout) */
long long bytes_in; /* number of bytes transferred from the client to the server */
long long bytes_out; /* number of bytes transferred from the server to the client */
int conn_retries; /* maximum number of connect retries */
diff --git a/include/types/server.h b/include/types/server.h
index 8fb8a1f66..a52a9d858 100644
--- a/include/types/server.h
+++ b/include/types/server.h
@@ -116,16 +116,16 @@ struct server {
struct eb_root *lb_tree; /* we want to know in what tree the server is */
struct server *next_full; /* next server in the temporary full list */
- unsigned failed_checks, down_trans; /* failed checks and up-down transitions */
+ long long failed_checks, down_trans; /* failed checks and up-down transitions */
unsigned down_time; /* total time the server was down */
time_t last_change; /* last time, when the state was changed */
- unsigned failed_conns, failed_resp; /* failed connect() and responses */
- unsigned retries, redispatches; /* retried and redispatched connections */
- unsigned failed_secu; /* blocked responses because of security concerns */
+ long long failed_conns, failed_resp; /* failed connect() and responses */
+ long long retries, redispatches; /* retried and redispatched connections */
+ long long failed_secu; /* blocked responses because of security concerns */
struct freq_ctr sess_per_sec; /* sessions per second on this server */
- unsigned cum_sess; /* cumulated number of sessions really sent to this server */
- unsigned cum_lbconn; /* cumulated number of sessions directed by load balancing */
+ long long cum_sess; /* cumulated number of sessions really sent to this server */
+ long long cum_lbconn; /* cumulated number of sessions directed by load balancing */
long long bytes_in; /* number of bytes transferred from the client to the server */
long long bytes_out; /* number of bytes transferred from the server to the client */
diff --git a/src/dumpstats.c b/src/dumpstats.c
index b132f7174..f749de438 100644
--- a/src/dumpstats.c
+++ b/src/dumpstats.c
@@ -728,13 +728,13 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* pxid, name, queue cur, queue max, */
"%s,FRONTEND,,,"
/* sessions : current, max, limit, total */
- "%d,%d,%d,%u,"
+ "%d,%d,%d,%lld,"
/* bytes : in, out */
"%lld,%lld,"
/* denied: req, resp */
- "%d,%d,"
+ "%lld,%lld,"
/* errors : request, connect, response */
- "%d,,,"
+ "%lld,,,"
/* warnings: retries, redispatches */
",,"
/* server status : reflect frontend status */
@@ -840,7 +840,7 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* errors : request, connect, response */
"
| %s | %s | \n"
/* warnings: retries, redispatches */
- "%u | %u | "
+ "%lld | %lld | "
"",
U2H0(sv->bytes_in), U2H1(sv->bytes_out),
U2H2(sv->failed_secu),
@@ -872,7 +872,7 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* check failures: unique, fatal, down time */
if (sv->state & SRV_CHECKED)
chunk_printf(&msg, sizeof(trash),
- "%d | %d | "
+ "%lld | %lld | "
"%s | "
"",
svs->failed_checks, svs->down_trans,
@@ -907,15 +907,15 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* queue : current, max */
"%d,%d,"
/* sessions : current, max, limit, total */
- "%d,%d,%s,%u,"
+ "%d,%d,%s,%lld,"
/* bytes : in, out */
"%lld,%lld,"
/* denied: req, resp */
- ",%d,"
+ ",%lld,"
/* errors : request, connect, response */
- ",%d,%d,"
+ ",%lld,%lld,"
/* warnings: retries, redispatches */
- "%u,%u,"
+ "%lld,%lld,"
"",
px->id, sv->id,
sv->nbpend, sv->nbpend_max,
@@ -942,7 +942,7 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* check failures: unique, fatal; last change, total downtime */
if (sv->state & SRV_CHECKED)
chunk_printf(&msg, sizeof(trash),
- "%d,%d,%d,%d,",
+ "%lld,%lld,%d,%d,",
sv->failed_checks, sv->down_trans,
(int)(now.tv_sec - sv->last_change), srv_downtime(sv));
else
@@ -966,7 +966,7 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
}
/* sessions: lbtot */
- chunk_printf(&msg, sizeof(trash), ",%u,", sv->cum_lbconn);
+ chunk_printf(&msg, sizeof(trash), ",%lld,", sv->cum_lbconn);
/* tracked */
if (sv->tracked)
@@ -1020,7 +1020,7 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* errors : request, connect, response */
" | %s | %s | \n"
/* warnings: retries, redispatches */
- "%u | %u | "
+ "%lld | %lld | "
/* backend status: reflect backend status (up/down): we display UP
* if the backend has known working servers or if it has no server at
* all (eg: for stats). Then we display the total weight, number of
@@ -1052,15 +1052,15 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* queue : current, max */
"%d,%d,"
/* sessions : current, max, limit, total */
- "%d,%d,%d,%u,"
+ "%d,%d,%d,%lld,"
/* bytes : in, out */
"%lld,%lld,"
/* denied: req, resp */
- "%d,%d,"
+ "%lld,%lld,"
/* errors : request, connect, response */
- ",%d,%d,"
+ ",%lld,%lld,"
/* warnings: retries, redispatches */
- "%u,%u,"
+ "%lld,%lld,"
/* backend status: reflect backend status (up/down): we display UP
* if the backend has known working servers or if it has no server at
* all (eg: for stats). Then we display the total weight, number of
@@ -1070,7 +1070,7 @@ int stats_dump_proxy(struct session *s, struct proxy *px, struct uri_auth *uri)
/* rest of backend: nothing, down transitions, last change, total downtime */
",%d,%d,%d,,"
/* pid, iid, sid, throttle, lbtot, tracked, type */
- "%d,%d,0,,%u,,%d,"
+ "%d,%d,0,,%lld,,%d,"
/* rate */
"%u,"
"\n",
diff --git a/src/haproxy.c b/src/haproxy.c
index e78c01d25..6968079f2 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -279,7 +279,7 @@ void sig_dump_state(int sig)
send_log(p, LOG_NOTICE, "SIGHUP received, dumping servers states for proxy %s.\n", p->id);
while (s) {
snprintf(trash, sizeof(trash),
- "SIGHUP: Server %s/%s is %s. Conn: %d act, %d pend, %d tot.",
+ "SIGHUP: Server %s/%s is %s. Conn: %d act, %d pend, %lld tot.",
p->id, s->id,
(s->state & SRV_RUNNING) ? "UP" : "DOWN",
s->cur_sess, s->nbpend, s->cum_sess);
@@ -291,19 +291,19 @@ void sig_dump_state(int sig)
/* FIXME: those info are a bit outdated. We should be able to distinguish between FE and BE. */
if (!p->srv) {
snprintf(trash, sizeof(trash),
- "SIGHUP: Proxy %s has no servers. Conn: act(FE+BE): %d+%d, %d pend (%d unass), tot(FE+BE): %d+%d.",
+ "SIGHUP: Proxy %s has no servers. Conn: act(FE+BE): %d+%d, %d pend (%d unass), tot(FE+BE): %lld+%lld.",
p->id,
p->feconn, p->beconn, p->totpend, p->nbpend, p->cum_feconn, p->cum_beconn);
} else if (p->srv_act == 0) {
snprintf(trash, sizeof(trash),
- "SIGHUP: Proxy %s %s ! Conn: act(FE+BE): %d+%d, %d pend (%d unass), tot(FE+BE): %d+%d.",
+ "SIGHUP: Proxy %s %s ! Conn: act(FE+BE): %d+%d, %d pend (%d unass), tot(FE+BE): %lld+%lld.",
p->id,
(p->srv_bck) ? "is running on backup servers" : "has no server available",
p->feconn, p->beconn, p->totpend, p->nbpend, p->cum_feconn, p->cum_beconn);
} else {
snprintf(trash, sizeof(trash),
"SIGHUP: Proxy %s has %d active servers and %d backup servers available."
- " Conn: act(FE+BE): %d+%d, %d pend (%d unass), tot(FE+BE): %d+%d.",
+ " Conn: act(FE+BE): %d+%d, %d pend (%d unass), tot(FE+BE): %lld+%lld.",
p->id, p->srv_act, p->srv_bck,
p->feconn, p->beconn, p->totpend, p->nbpend, p->cum_feconn, p->cum_beconn);
}