Шлюз. Статистика подключений
Статистика подключений
Шлюз позволяет получать статистику использования через запрос /info
с разными флагами. Статистика может быть выведена в кратком виде, содержащем только общую информацию, и в полном виде, в котором дополнительно отражены подключения «Клиентов».
Доступны следующие флаги, которые можно передать в самом запросе:
json
- отобразить статистику в JSON-формате, без использования флага будет выведен простой текст. Если в заголовке запроса присутствует поле «accept: application/json», то это равносильно установке флагаjson
;pretty
- отформатировать вывод в удобочитаемый вид для JSON-формата;full
- отобразить полную статистику с информацией по подключенным «Клиентам».
Примеры запросов:
https://<IP-адрес Шлюза>:<порт Шлюза>/info
- краткая статистика в текстовом виде;https://<IP-адрес Шлюза>:<порт Шлюза>/info?full
- полная статистика в текстовом виде;https://<IP-адрес Шлюза>:<порт Шлюза>/info?json
- краткая статистика в JSON-формате;https://<IP-адрес Шлюза>:<порт Шлюза>/info?json&pretty&full
- полная статистика в удобочитаемом JSON-формате.
Вся статистика объединена в одну общую структуру и не имеет значения, через какой протокол она вызывается: HTTP или HTTPS.
Пример передачи флага json
через HTTP-заголовок:
curl -X 'GET' -H "Accept: application/json" https://<IP-адрес Шлюза>:<порт Шлюза>/info
Что также равносильно запросу:
curl -X 'GET' https://<IP-адрес Шлюза>:<порт Шлюза>/info?json
Пример вывода полной статистики в удобочитаемом JSON-формате при одном подключенном «Клиенте»:
{ "timeStart": "2024-02-09 16:56:26.509 +0800", // Время запуска прокси-сервера в GMT "allDevice": { // Общая статистика "webUp": { // Веб-сокеты "recvBytes": 867863000, // Количество принятых байт "sendBytes": 867834000, // Количество переданных байт "recvFrames": 867863, // Количество принятых фреймов "sendFrames": 39008 // Количество переданных фреймов }, "tcpDown": { // TCP-сокеты "recvBytes": 867863000, // Количество принятых байт "sendBytes": 867863000 // Количество переданных байт }, "udpDown": { // UDP-сокеты "recvBytes": 0, "sendBytes": 0, "recvFrames": 0, "sendFrames": 0 } }, "numClients": 1, // Количество подключенных «Клиентов» "clients": [ // Массив информации о подключенных «Клиентах» (они отсортированы по времени подключения) { // Индивидуальная информация по каждому «Клиенту» "timeConnect": "2024-02-09 16:58:12.578 +0800", // Время подключения в GMT "ipUp": "127.0.0.1:36778", // IP-адрес и порт "ipDown": "127.0.0.1:9080", // IP-адрес и порт "webUp": { // Веб-сокет "recvBytes": 867863000, // Количество принятых байт "sendBytes": 867834000, // Количество переданных байт "recvFrames": 867863, // Количество принятых фреймов "sendFrames": 39008 // Количество переданных фреймов }, "tcpDown": { // TCP Сокет "recvBytes": 867863000, // Количество принятых байт "sendBytes": 867863000 // Количество переданных байт } } ] }