Closed VitaliStupin closed 6 years ago
Security server environmental monitoring status is available through JMXMP (see also https://github.com/ria-ee/X-Road/blob/develop/xtee6/doc/EnvironmentalMonitoring/Monitoring-architecture.md, getSecurityServerMetrics). Convertible into JSON.
Security server operational monitoring status is available over X-road messages (see also https://github.com/ria-ee/X-Road/blob/develop/xtee6/doc/OperationalMonitoring/Protocols/pr-opmon_x-road_operational_monitoring_protocol_Y-1096-2.md, methods getSecurityServerOperationalData and getSecurityServerHealthData) or JMXMP (see also https://github.com/ria-ee/X-Road/blob/develop/xtee6/doc/OperationalMonitoring/Protocols/pr-opmonjmx_x-road_operational_monitoring_jmx_protocol_Y-1096-3.md, method getSecurityServerHealthData only). Convertible into JSON.
Central server status using similar methods is not available as far as I know.
The proposed functionality is closely related to health check implemented in external load balancing project. Here is additional information about the health check that we have already implemented.
Health check service The health check service is a new feature of xroad-proxy for load balancing support. It is disabled by default but can be configured and enabled via configuration options under [Proxy]:
The service can be accessed using plain HTTP. It will return HTTP 200 OK if the proxy should be able to process messages and HTTP 500 Internal Server Error otherwise. An error condition will add a short message about the failure reason to the body of the response.
The health checks currently checks that:
Each of these checks currently has a separate timeout of 5 seconds. If the check fails to produce a response in this time, it will be considered as a health check failure and will cause a HTTP 500.
Each of the results of the above listed separate checks will be cached for a short while to avoid excess resource usage by the health check. The results are cached for a short time, though:
Known check result inconsistencies vs. actual state:
The functionality is also related to diagnostics offered by the security server UI.
Thanks for the info. And I agree that this is closely related to the diagnostics page. Reusing existing resources is definitely planned. And I do think the output should be available in both human-readable form in the diagnostics section as well as machine-readable in the intended /heartbeat.json form.
Transferred to X-Road Service Desk as an enhancement request. Can be closed.
Affected components: - Affected documentation: - Estimated delivery: - External reference: -
Problem Source code must conform to NFR (https://github.com/vrk-kpa/xroad-joint-development/blob/master/NFR.md)
Acceptance criteria