The FreeRADIUS server
$Id: 15bac2a4c627c01d1aa2047687b3418955ac7f00 $
|
#include <freeradius-devel/server/client.h>
#include <freeradius-devel/server/request.h>
#include <freeradius-devel/server/stats.h>
#include <freeradius-devel/util/debug.h>
#include <freeradius-devel/util/misc.h>
#include <freeradius-devel/util/time.h>
#include <freeradius-devel/radius/defs.h>
Go to the source code of this file.
Macros | |
#define | EMA_SCALE (100) |
#define | F_EMA_SCALE (1000000) |
#define | FR_STATS_INIT |
#define | INC_ACCT(_x) do { radius_acct_stats._x++;request->client->acct._x++; } while (0) |
#define | INC_AUTH(_x) do { radius_auth_stats._x++;request->client->auth._x++; } while (0) |
Functions | |
void | fr_stats_bins (fr_stats_t *stats, fr_time_t start, fr_time_t end) |
Sort latency times into bins. More... | |
void | radius_stats_ema (fr_stats_ema_t *ema, fr_time_t start, fr_time_t end) |
void | radius_stats_init (int flag) |
void | request_stats_final (request_t *request) |
Variables | |
static fr_time_t | hup_time |
fr_stats_t | radius_acct_stats = FR_STATS_INIT |
fr_stats_t | radius_auth_stats = FR_STATS_INIT |
static fr_time_t | start_time |
#define FR_STATS_INIT |
void fr_stats_bins | ( | fr_stats_t * | stats, |
fr_time_t | start, | ||
fr_time_t | end | ||
) |
Sort latency times into bins.
This solves the problem of attempting to keep min/max/avg latencies, whilst not knowing what the polling frequency will be.
[out] | stats | Holding monotonically increasing stats bins. |
[in] | start | of the request. |
[in] | end | of the request. |
Definition at line 216 of file stats.c.
void radius_stats_ema | ( | fr_stats_ema_t * | ema, |
fr_time_t | start, | ||
fr_time_t | end | ||
) |
void radius_stats_init | ( | int | flag | ) |
void request_stats_final | ( | request_t * | request | ) |
fr_stats_t radius_acct_stats = FR_STATS_INIT |
fr_stats_t radius_auth_stats = FR_STATS_INIT |