.. _gs3_rest_monitor: Мониторинг сервера =================== Набор служебных сервисов для мониторинга состояния сервера приложений и управления его сессиями. Публичные сервисы ------------------------ Состояние сервера приложений ``````````````````````````````````` Сервис информирует о доступности сервера приложений (узла кластера). **Адреса сервиса** - ``http://{server:port}/app/sys/monitor/public/isAlive`` Если узел доступен и готов отвечать на запросы, будет возвращён: ``HTTP/1.1 200 "OK"``. Если узел останавливается, будет возвращён: ``HTTP/1.1 404 "Not Found"``. Если узел в сервисном режиме, будет возвращён: ``HTTP/1.1 503 "Service Unavailable"``. .. tip:: Сервис публичный и не требует аутентификации. Приватные сервисы ------------------------ Список узлов кластера ``````````````````````````````````` Сервис возвращает список узлов кластера. **Адреса сервиса** - http://{server:port}/app/sys/monitor/protected/nodes Пример ответа .. code-block:: json ["NODE-5657657-8080","NODE-5657657-8090"] Информация об узле кластера ``````````````````````````````````` **Адреса сервиса** - http://{server:port}/app/sys/monitor/protected/node/{name} Пример ответа .. code-block:: json { "nodeName": "NODE-5657657-8080", "readCellCount": 0, "hostName": "NODE-5657657", "insertRowCount": 0, "readRowCount": 0, "commitCount": 0, "nodeUUID": "NODE-5657657-8080", "jdbcCost": 0.0, "updateRowCount": 0, "rollbackCount": 0, "nodeStartDuration": 12, "xmx": 28631367680, "nodeInstanceId": null, "hostIp": "192.168.1.63", "httpPort": 8080, "gcCount": 11, "sslPort": 8443, "gcInfo": { "memoryUsageBeforeGc": { "PS Eden Space": { "init": 535822336, "max": 10450632704, "used": 0, "commited": 2023751680 }, "Code Cache": { "init": 2555904, "max": 251658240, "used": 42419840, "commited": 43515904 }, "Compressed Class Space": { "init": 0, "max": 1073741824, "used": 20107144, "commited": 21102592 }, "PS Old Gen": { "init": 1429209088, "max": 21473787904, "used": 141442312, "commited": 1588068352 }, "PS Survivor Space": { "init": 89128960, "max": 130023424, "used": 130011400, "commited": 130023424 }, "Metaspace": { "init": 0, "max": -1, "used": 162962072, "commited": 168165376 } }, "duration": 146, "startTime": 71011, "memoryUsageAfterGc": { "PS Eden Space": { "init": 535822336, "max": 10450632704, "used": 0, "commited": 2023751680 }, "Code Cache": { "init": 2555904, "max": 251658240, "used": 42419840, "commited": 43515904 }, "Compressed Class Space": { "init": 0, "max": 1073741824, "used": 20106568, "commited": 21102592 }, "PS Old Gen": { "init": 1429209088, "max": 21473787904, "used": 162238640, "commited": 1946681344 }, "PS Survivor Space": { "init": 89128960, "max": 130023424, "used": 0, "commited": 130023424 }, "Metaspace": { "init": 0, "max": -1, "used": 162960336, "commited": 168165376 } }, "endTime": 71157 }, "sqlExecuteCount": 0, "nodeUptime": 517, "insertCellCount": 0, "nodeId": null, "updateCellCount": 0, "jdbcAcquireCount": 0 } Управление рабочими сеансами ``````````````````````````````````` Сервис управления рабочими сеансами пользователей. **Адреса сервиса** - http://{server:port}/app/sys/monitor/protected/sessions/{command} где: - ``{command}`` - команда - ``kill`` - Принудительное, безусловное закрытие всех пользовательских сеансов узла. - ``save`` - Экспериментальная функциональность. Сохранение состояния пользовательских сеансов, для переключения на другой узел кластера. Управление рабочим сеансом ``````````````````````````````````` Сервис управления рабочим сеансом пользователя. **Адреса сервиса** - http://{server:port}/app/sys/monitor/protected/session/{id}/{command} где: - ``{id}`` - уникальный идентификатор рабочего сеанса, строковое представление GUID. - ``{command}`` - команда - ``kill`` - Принудительное, безусловное закрытие пользовательского сеанса. - ``save`` - Экспериментальная функциональность. Сохранение состояния пользовательского сеанса, для переключения на другой узел кластера. Аутентификация ----------------- Для сервисов мониторинга узлов кластера и управления сеансами доступна ``Basic`` аутентификация. Имена и пароли пользователей, имеющих доступ к сервисам, определяются в конфигурационном файле сервера, т.к. сервисы не привязаны к какому-либо прикладному решению. Пользователь монитора должен обладать ролью ``http-monitor`` .. code-block:: xml .. seealso:: :xsd:elem:`Configuration.Security.users` Защита от подбора пароля `````````````````````````````````` Для ограничения числа попыток подбора пароля, после 5 неудачных попыток входа в течение 15 минут, сервер блокирует учётную запись пользователя на 15 минут. Разблокировка учётной записи пользователя возможна через :ref:`SSH-терминал` командой ``unlock monitor user {name}``.