MINOR: stats: output dcon

These are denied conns. Strangely this wasn't emitted while it used to be
available for a while. It corresponds to the number of connections blocked
by "tcp-request connection reject".
This commit is contained in:
Willy Tarreau 2016-10-21 18:15:32 +02:00
parent 87846e42a4
commit 8a90b8ea19
3 changed files with 5 additions and 0 deletions

View File

@ -1035,6 +1035,7 @@ S (Servers).
78: conn_rate_max [.F..]: highest known conn_rate
79: conn_tot [.F..]: cumulative number of connections
80: intercepted [.FB.]: cum. number of intercepted requests (monitor, stats)
81: dcon [LF..]: requests denied by "tcp-request connection" rules
9.2) Typed output format

View File

@ -204,6 +204,7 @@ enum stat_field {
ST_F_CONN_RATE_MAX,
ST_F_CONN_TOT,
ST_F_INTERCEPTED,
ST_F_DCON,
/* must always be the last one */
ST_F_TOTAL_FIELDS

View File

@ -217,6 +217,7 @@ const char *stat_field_names[ST_F_TOTAL_FIELDS] = {
[ST_F_CONN_RATE_MAX] = "conn_rate_max",
[ST_F_CONN_TOT] = "conn_tot",
[ST_F_INTERCEPTED] = "intercepted",
[ST_F_DCON] = "dcon",
};
/* one line of stats */
@ -4015,6 +4016,7 @@ int stats_fill_fe_stats(struct proxy *px, struct field *stats, int len)
stats[ST_F_DREQ] = mkf_u64(FN_COUNTER, px->fe_counters.denied_req);
stats[ST_F_DRESP] = mkf_u64(FN_COUNTER, px->fe_counters.denied_resp);
stats[ST_F_EREQ] = mkf_u64(FN_COUNTER, px->fe_counters.failed_req);
stats[ST_F_DCON] = mkf_u64(FN_COUNTER, px->fe_counters.denied_conn);
stats[ST_F_STATUS] = mkf_str(FO_STATUS, px->state == PR_STREADY ? "OPEN" : px->state == PR_STFULL ? "FULL" : "STOP");
stats[ST_F_PID] = mkf_u32(FO_KEY, relative_pid);
stats[ST_F_IID] = mkf_u32(FO_KEY|FS_SERVICE, px->uuid);
@ -4106,6 +4108,7 @@ int stats_fill_li_stats(struct proxy *px, struct listener *l, int flags,
stats[ST_F_DREQ] = mkf_u64(FN_COUNTER, l->counters->denied_req);
stats[ST_F_DRESP] = mkf_u64(FN_COUNTER, l->counters->denied_resp);
stats[ST_F_EREQ] = mkf_u64(FN_COUNTER, l->counters->failed_req);
stats[ST_F_DCON] = mkf_u64(FN_COUNTER, l->counters->denied_conn);
stats[ST_F_STATUS] = mkf_str(FO_STATUS, (l->nbconn < l->maxconn) ? (l->state == LI_LIMITED) ? "WAITING" : "OPEN" : "FULL");
stats[ST_F_PID] = mkf_u32(FO_KEY, relative_pid);
stats[ST_F_IID] = mkf_u32(FO_KEY|FS_SERVICE, px->uuid);