mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-08-10 09:07:02 +02:00
MINOR: Add fe_req_rate sample fetch
The fe_req_rate is similar to fe_sess_rate, but fetches the number of HTTP requests per second instead of connections/sessions per second. Signed-off-by: Nenad Merdanovic <nmerdan@anine.io>
This commit is contained in:
parent
c3d8cd47e0
commit
ad9a7e9770
@ -12572,6 +12572,11 @@ fe_conn([<frontend>]) : integer
|
|||||||
statistics to servers in HTTP headers. See also the "dst_conn", "be_conn",
|
statistics to servers in HTTP headers. See also the "dst_conn", "be_conn",
|
||||||
"fe_sess_rate" fetches.
|
"fe_sess_rate" fetches.
|
||||||
|
|
||||||
|
fe_req_rate([<frontend>]) : integer
|
||||||
|
Returns an integer value corresponding to the number of HTTP requests per
|
||||||
|
second sent to a frontend. This number can differ from "fe_sess_rate" in
|
||||||
|
situations where client-side keep-alive is enabled.
|
||||||
|
|
||||||
fe_sess_rate([<frontend>]) : integer
|
fe_sess_rate([<frontend>]) : integer
|
||||||
Returns an integer value corresponding to the sessions creation rate on the
|
Returns an integer value corresponding to the sessions creation rate on the
|
||||||
frontend, in number of new sessions per second. This is used with ACLs to
|
frontend, in number of new sessions per second. This is used with ACLs to
|
||||||
|
@ -167,6 +167,19 @@ smp_fetch_fe_id(const struct arg *args, struct sample *smp, const char *kw, void
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* set temp integer to the number of HTTP requests per second reaching the frontend.
|
||||||
|
* Accepts exactly 1 argument. Argument is a frontend, other types will cause
|
||||||
|
* an undefined behaviour.
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
smp_fetch_fe_req_rate(const struct arg *args, struct sample *smp, const char *kw, void *private)
|
||||||
|
{
|
||||||
|
smp->flags = SMP_F_VOL_TEST;
|
||||||
|
smp->data.type = SMP_T_SINT;
|
||||||
|
smp->data.u.sint = read_freq_ctr(&args->data.prx->fe_req_per_sec);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/* set temp integer to the number of connections per second reaching the frontend.
|
/* set temp integer to the number of connections per second reaching the frontend.
|
||||||
* Accepts exactly 1 argument. Argument is a frontend, other types will cause
|
* Accepts exactly 1 argument. Argument is a frontend, other types will cause
|
||||||
* an undefined behaviour.
|
* an undefined behaviour.
|
||||||
@ -200,6 +213,7 @@ smp_fetch_fe_conn(const struct arg *args, struct sample *smp, const char *kw, vo
|
|||||||
static struct sample_fetch_kw_list smp_kws = {ILH, {
|
static struct sample_fetch_kw_list smp_kws = {ILH, {
|
||||||
{ "fe_conn", smp_fetch_fe_conn, ARG1(1,FE), NULL, SMP_T_SINT, SMP_USE_INTRN, },
|
{ "fe_conn", smp_fetch_fe_conn, ARG1(1,FE), NULL, SMP_T_SINT, SMP_USE_INTRN, },
|
||||||
{ "fe_id", smp_fetch_fe_id, 0, NULL, SMP_T_SINT, SMP_USE_FTEND, },
|
{ "fe_id", smp_fetch_fe_id, 0, NULL, SMP_T_SINT, SMP_USE_FTEND, },
|
||||||
|
{ "fe_req_rate", smp_fetch_fe_req_rate, ARG1(1,FE), NULL, SMP_T_SINT, SMP_USE_INTRN, },
|
||||||
{ "fe_sess_rate", smp_fetch_fe_sess_rate, ARG1(1,FE), NULL, SMP_T_SINT, SMP_USE_INTRN, },
|
{ "fe_sess_rate", smp_fetch_fe_sess_rate, ARG1(1,FE), NULL, SMP_T_SINT, SMP_USE_INTRN, },
|
||||||
{ /* END */ },
|
{ /* END */ },
|
||||||
}};
|
}};
|
||||||
|
Loading…
Reference in New Issue
Block a user