Проверка состояния сервера. Собираются общие показатели и набор числовых метрик.
Для авторизации при обращении к запросу используется токен, определенный в переменной HEALTH_CHECK_ACCESS_KEY
конфигурационного файла /etc/opt/termidesk-vdi/termidesk.conf
.
Оценка состояния должна производиться в инициаторе запроса на основе набора правил и пороговых значений с учетом конкретной конфигурации системы.
Для разных конфигураций системы один и тот же показатель в абсолютном выражении может соответствовать состоянию и «PASS», и «FAIL».
Формат запроса:
curl --insecure -v -s -X 'GET' \
'https://${HOSTNAME}:${HEALTH_PORT}/aggregator/health/check' \
-H 'accept: application/json' \
-H 'Authorization: Token ${HEALTH_CHECK_ACCESS_KEY}'
BASH
где:
--insecure
- отключение проверки валидности сертификатов. Выполнение запроса без использования проверки SSL допустимо только на тестовых стендах. В производственной среде необходимо установить валидные сертификаты;
${HOSTNAME}
- сетевой адрес или полное доменное имя узла;
${HEALTH_PORT}
- порт для запросов проверки состояния;
${HEALTH_CHECK_ACCESS_KEY}
- токен, определенный в переменной HEALTH_CHECK_ACCESS_KEY
файла /etc/opt/termidesk-vdi/termidesk.conf
.
Пример возвращаемого списка:
{"version":"5.1","description":"termidesk-aggregator","status":"pass","checks":
{
"celery:connectionTest":
[{"componentId":"celery(common)","componentType":"component","status":"pass"},
{"componentId":"celery@test(worker)","componentType":"component","status":"pass"}],
"database:responseTime":
[{"componentId":"default","componentType":"datastore","observedValue":0.00040602684020996094,"observedUnit":"s","status":"pass"}],
"messages_broker:connectionTest":
[{"componentId":"amqp://termidesk:**@localhost:5672/termidesk","componentType":"component","status":"pass"}],
"fluentd:connectionTest":[],
"sites:connectionTest":
[{"componentId":"site2","componentType":"component","status":"pass"},
{"componentId":"stal","componentType":"component","status":"pass"},
{"componentId":"test-site","componentType":"component","status":"pass"},
{"componentId":"site1-1","componentType":"component","status":"pass"},
{"componentId":"site99","componentType":"component","status":"pass"}
]}
}
BASH