Доступные команды модуля «health» компонента «Шлюз»

Доступные администратору URL-команды перечислены в таблице.

Перечень URL-команд модуля «health»

URL-командаТипОписание

/api/health

GET

Проверка состояния компонента. 

Формат запроса:

curl -X 'GET' \
  'http://${HOSTNAME}:${HEALTH_PORT}/api/health' \
  -H 'accept: application/json' \
  -H 'Authorization: Token ${HEALTH_CHECK_ACCESS_KEY}'
BASH

где:

${HOSTNAME} - сетевой адрес или полное доменное имя узла компонента «Шлюза»;

${HEALTH_PORT} - порт для запросов проверки состояния, для компонента «Шлюз» - 8102. Порт определен в параметре listen: ${mgtServerIP:0.0.0.0}:${mgtServerPort:8102} конфигурационного файла «Шлюза» /etc/termidesk/gateway.yaml;

${HEALTH_CHECK_ACCESS_KEY} - токен, определенный в параметре token: ${healthCheckAccessKey} конфигурационного файла «Шлюза» /etc/termidesk/gateway.yaml.

Формат запроса, если «Шлюз» настроен для работы по защищенному соединению:

curl --insecure -v -s -X 'GET' \
  'https://${HOSTNAME}:${HEALTH_PORT}/api/health' \
  -H 'accept: application/json' \
  -H 'Authorization: Token ${HEALTH_CHECK_ACCESS_KEY}'
BASH

Ключ --insecure используется для отключения проверки валидности сертификатов. Выполнение запроса без использования проверки SSL допустимо только на тестовых стендах. В производственной среде необходимо установить валидные сертификаты.

Вид возвращаемого списка:

{
  "status": "pass",
  "version": "0.7.0.24295",
  "output": "",
  "description": "Termidesk Gateway"
}
BASH

/api/health/metrics

GET

Возвращает список метрик узла компонента. 

Формат запроса:

curl -X 'GET' \
  'http://${HOSTNAME}:${HEALTH_PORT}/api/health/metrics' \
  -H 'accept: application/json' \
  -H 'Authorization: Token ${METRICS_ACCESS_KEY}'
BASH

где:

${HOSTNAME} - сетевой адрес или полное доменное имя узла компонента «Шлюза»;

${HEALTH_PORT} - порт для запросов проверки состояния, для компонента «Шлюз» - 8102. Порт определен в параметре listen: ${mgtServerIP:0.0.0.0}:${mgtServerPort:8102} конфигурационного файла «Шлюза» /etc/termidesk/gateway.yaml;

${METRICS_ACCESS_KEY} - токен, определенный в параметре token: ${metricsAccessKey} конфигурационного файла «Шлюза» /etc/termidesk/gateway.yaml.

Информацию по всем возвращаемым значениям можно получить в документации библиотеки psutil на сайте: https://psutil.readthedocs.io/en/latest.

Вид возвращаемого списка метрик:

# Версия компонента (Шлюза)
version_info{version="0.7.0.24295"} 1.0
# Версия ОС
system_info{comp_name="gateway.termidesk.local",machine="x86_64",os_name="Linux 6.1.90-1-generic",version="#astra3+ci20 SMP PREEMPT_DYNAMIC Mon Jul 22 14:15:46 UTC 2024"} 1.0
# Общая загрузка процессора в процентах
cpu_total_percent 0.1
# Общий размер физической памяти в байтах
virtual_memory_total_bytes 4107214848
# Размер доступной физической памяти в байтах
virtual_memory_available_bytes 3748093952
# Размер используемой физической памяти в байтах
virtual_memory_used_bytes 153673728
# Размер свободной физической памяти в байтах
virtual_memory_free_bytes 3794550784
# Период в секундах, в течение которого система функционирует без проблем
uptime_seconds 20652
# Общий размер диска в байтах
disk_total_bytes 15791431680
# Используемый размер диска в байтах
disk_used_bytes 4137959424
# Свободный размер диска в байтах
disk_free_bytes 10828980224
# Количество операций чтения с диска
disk_read_count 3877
# Количество операций записи на диск
disk_write_count 2899
# Число прочитанных с диска байт
disk_read_bytes 138545152
# Число записанных на диск байт
disk_write_bytes 138545152
# Информация о Шлюзе и его состоянии
gateway_info{version="0.7.0.24295", status="A"} 1.0
# Далее следует информация о сетевых метриках
# Общее количество сессий на Шлюзе
gateway_current_total_sessions 0
# Текущий входящий трафик по каждому интерфейсу в отдельности, Мбит/с
throughput_if_rx{type="lo"} 0.0
throughput_if_rx{type="eth0"} 0.005
# Текущий исходящий трафик по каждому интерфейсу в отдельности, Мбит/с
throughput_if_tx{type="lo"} 0.0
throughput_if_tx{type="eth0"} 0.0
# Общий объём входящего трафика по всем интерфейсам с момента старта Шлюза, в байтах
bytes_if_rx{type="lo"} 0
bytes_if_rx{type="eth0"} 7033268
# Общий объём исходящего трафика по всем интерфейсам с момента старта Шлюза, в байтах
bytes_if_tx{type="lo"} 0
bytes_if_tx{type="eth0"} 141252
BASH