|
| 1 | +# eradius metrics |
| 2 | + |
| 3 | +`eradius` uses exometer core to implement various operation metrics. |
| 4 | +For now, there are 3 groups of metrics: |
| 5 | + |
| 6 | +* `server` |
| 7 | +* `nas` (server metrics separated per nas) |
| 8 | +* `client` |
| 9 | + |
| 10 | +Collecting of each group can be enabled/disabled though setting `metrics` env for `eradius` application: |
| 11 | + |
| 12 | + {metrics, [{enabled, [server, nas, client]}]}, |
| 13 | + |
| 14 | +By default it is `[server, nas, client]`. |
| 15 | + |
| 16 | +### The following `server` metrics exist: |
| 17 | + |
| 18 | +_All metrics start with `[eradius, radius]` prefix and the prefix is not included into table to save space._ |
| 19 | + |
| 20 | +| Metric | Type | |
| 21 | +| ------------------------------------------------------------------------------------------------- | --------- | |
| 22 | +| [request, invalid, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 23 | +| [request, invalid, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 24 | +| [request, malformed, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 25 | +| [request, malformed, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 26 | +| [request, dropped, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 27 | +| [request, dropped, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 28 | +| [request, retransmission, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 29 | +| [request, duplicate, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 30 | +| [request, duplicate, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 31 | +| [request, bad_authenticator, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] `*` | histogram | |
| 32 | +| [request, bad_authenticator, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] `*` | counter | |
| 33 | +| [request, unknown_type, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 34 | +| [request, unknown_type, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 35 | +| [request, total, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 36 | +| [request, total, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 37 | +| [request, access, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | gauge | |
| 38 | +| [request, access, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | histogram | |
| 39 | +| [request, accounting, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 40 | +| [request, accounting, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 41 | +| [request, coa, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 42 | +| [request, coa, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 43 | +| [request, disconnect, server, $NAME, $IP, $PORT, total, undefined, undefined, gauge] | histogram | |
| 44 | +| [request, disconnect, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 45 | +| [response, total ,server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 46 | +| [response, access, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 47 | +| [response, accounting, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 48 | +| [response, access_accept, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 49 | +| [response, access_reject, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 50 | +| [response, access_challenge, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 51 | +| [response, disconnect_ack, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 52 | +| [response, disconnect_nak, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 53 | +| [response, coa_ack, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 54 | +| [response, coa_nak, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 55 | +| [request, pending, server, $NAME, $IP, $PORT, total, undefined, undefined, counter] | counter | |
| 56 | +| [time, last_request, server, $NAME, $IP, $PORT, total, undefined, undefined, ticks] | gauge | |
| 57 | +| [time, since_last_request, server, $NAME, $IP, $PORT, total, undefined, undefined, ticks] | gauge | |
| 58 | +| [time, last_reset, server, $NAME, $IP, $PORT, total, undefined, undefined, ticks] | gauge | |
| 59 | +| [time, last_config_reset, server, $NAME, $IP, $PORT, total, undefined, undefined, ticks] | gauge | |
| 60 | +| [time, up, server, $NAME, $IP, $PORT, total, undefined, undefined, ticks] | gauge | |
| 61 | + |
| 62 | + |
| 63 | +`*` - these metrics exist but not been updating. |
| 64 | + |
| 65 | +### The following `nas` metrics exist: |
| 66 | + |
| 67 | +_All metrics start with `[eradius, radius]` prefix and the prefix is not included into table to save space._ |
| 68 | + |
| 69 | + |
| 70 | +| Metric | Type | |
| 71 | +| ----------------------------------------------------------------------------------------------- | --------- | |
| 72 | +| [request, dropped, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 73 | +| [request, dropped, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 74 | +| [request, retransmission, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 75 | +| [request, duplicate, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 76 | +| [request, duplicate, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 77 | +| [request, bad_authenticator, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] `*` | histogram | |
| 78 | +| [request, bad_authenticator, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] `*` | counter | |
| 79 | +| [request, unknown_type, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 80 | +| [request, unknown_type, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 81 | +| [request, total, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 82 | +| [request, total, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 83 | +| [request, access, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 84 | +| [request, access, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 85 | +| [request, accounting, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 86 | +| [request, accounting, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 87 | +| [request, coa, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 88 | +| [request, coa, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 89 | +| [request, disconnect, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, gauge] | histogram | |
| 90 | +| [request, disconnect, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 91 | +| [response, total, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 92 | +| [response, access, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 93 | +| [response, accounting, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 94 | +| [response, access_accept, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 95 | +| [response, access_reject, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 96 | +| [response, access_challenge, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 97 | +| [response, disconnect_ack, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 98 | +| [response, disconnect_nak, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 99 | +| [response, coa_ack, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 100 | +| [response, coa_nak, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 101 | +| [request, pending, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, counter] | counter | |
| 102 | +| [time, last_request, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, ticks] | gauge | |
| 103 | +| [time, since_last_request, server, $NAME, $IP, $PORT, $NASID, $NASIP, undefined, ticks] | gauge | |
| 104 | + |
| 105 | +`*` - these metrics exist but not been updating. |
| 106 | + |
| 107 | +### The following `client` metrics exist: |
| 108 | + |
| 109 | +_All metrics start with `[eradius, radius]` prefix and the prefix is not included into table to save space._ |
| 110 | + |
| 111 | +| Metric | Type | |
| 112 | +| ----------------------------------------------------------------------------------------------- | --------- | |
| 113 | +| [request, retransmission, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, gauge] | histogram | |
| 114 | +| [request, retransmission, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 115 | +| [request, timeout, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, gauge] | histogram | |
| 116 | +| [request, timeout, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 117 | +| [request, bad_authenticator, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] `*` | counter | |
| 118 | +| [request, malformed, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] `*` | counter | |
| 119 | +| [request, unknown_type, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] `*` | counter | |
| 120 | +| [request, dropped, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 121 | +| [request, total, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, gauge] | histogram | |
| 122 | +| [request, total, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 123 | +| [request, access, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, gauge] | histogram | |
| 124 | +| [request, access, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 125 | +| [request, accounting, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, gauge] | histogram | |
| 126 | +| [request, accounting, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 127 | +| [request, coa, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, gauge] | histogram | |
| 128 | +| [request, coa, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 129 | +| [request, disconnect, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, gauge] | histogram | |
| 130 | +| [request, disconnect, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 131 | +| [response, total, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 132 | +| [response, access, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 133 | +| [response, accounting, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 134 | +| [response, access_accept, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 135 | +| [response, access_reject, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 136 | +| [response, access_challenge, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 137 | +| [response, disconnect_ack, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 138 | +| [response, disconnect_nak, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 139 | +| [response, coa_ack, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 140 | +| [response, coa_nak, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 141 | +| [request, pending, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, counter] | counter | |
| 142 | +| [time, last_request, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, ticks] | gauge | |
| 143 | +| [time, since_last_request, client, $CNAME, $CIP, undefined, $SNAME, $SIP, $SPORT, ticks] | gauge | |
| 144 | + |
| 145 | +`*` - these metrics exist but not been updating. |
| 146 | + |
| 147 | +`$NAME` - Server name. `$IP:$PORT` or name from configuration if exists. For this configuration: |
| 148 | + |
| 149 | + {servers, [ |
| 150 | + {root, {"127.0.0.1", [1812, 1813]}} |
| 151 | + ]} |
| 152 | + |
| 153 | +`root` will be used as a name. |
| 154 | + |
| 155 | +`$IP` - server listener IP from configuration. |
| 156 | + |
| 157 | +`$PORT` - server listener port from configuration. |
| 158 | + |
| 159 | +`$NASID` - `ID_$NASID` or `nas_id` from configuration if exists. |
| 160 | + |
| 161 | +`$NASIP` - NAS-IP-Address from configuration. |
| 162 | + |
| 163 | + {root, [ |
| 164 | + { {"NAS1", [arg1, arg2]}, |
| 165 | + [{"10.18.14.2", <<"secret1">>}]}, |
| 166 | + { {"NAS2", [arg1, arg2]}, |
| 167 | + [{{10, 18, 14, 3}, <<"secret2">>, [{nas_id, <<"name">>}]}]} |
| 168 | + ]}] |
| 169 | + |
| 170 | +The configuration above describes two NASes fro one root RADIUS server. |
| 171 | +For "NAS1" `$NASID` will be generated from ID an IP(`NAS1_10.18.14.2`), `$NASIP` = "10.18.14.2". |
| 172 | +For "NAS2" `nas_id` will be used for `$NASID`(`name`) `$NASIP` = "10.18.14.2". |
| 173 | + |
| 174 | +`$CNAME` - name from `client_name` option fduring call `eradius_client:send_request/3` or `undefined` by default. |
| 175 | + |
| 176 | +`$CIP` - `client_ip` from `eradius` enviroment. |
| 177 | + |
| 178 | +`$SNAME` - name from `server_name` option fduring call `eradius_client:send_request/3` or `undefined` by default. |
| 179 | + |
| 180 | +`$SIP` - IP address of destination server. |
| 181 | + |
| 182 | +`$SPORT` - Port of destination server. |
| 183 | + |
| 184 | +Histograms are created with `slot_period` = 100 and `time_span` = 60000. |
| 185 | +All timing values in the histograms are in microseconds (µs). |
0 commit comments