Изменить параметры метрики мониторинга

Для того, чтобы изменить параметры метрики хоста мониторинга, необходимо отправить PUT запрос по адресу https://api.1cloud.ru/monitoring/hosts/{hostId}/metrics/{metricId}, где {hostId} - уникальный идентификатор хоста мониторинга, а  {metricId} - уникальный идентификатор метрики

Ответом будет JSON объект, данный объект будет содержать атрибуты метрики.

Входные параметры

В запросе можно указывать только те параметры, которые необходимо изменить

 
Название Тип Описание
Name string Название метрики
Command object Команда, используемая для проверок метрики. У данного объекта параметры должны быть прописаны полностью, согласно таблицам ниже
EnableNotifications boolean Необходимо ли включить уведомления при изменении состояния метрики мониторинга

Параметры объекта Command
1. Ping
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Ping
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600

2. Tcp
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Tcp
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535
Send string Строка, отправляемая в запросе
ExpectedAnswer string Строка, ожидаемая в ответе

3. HttpGet
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: HttpGet
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по умолчанию - 80
Url string Абсолютный путь к ресурсу (обязательный параметр)
ExpectedStatus string Ожидаемая первая строка в ответе сервера (значение по-умолчанию "HTTP/1")
UseSsl boolean Используется ли SSL при обращению к ресурсу

4. HttpPost
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: HttpPost
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по умолчанию - 80
Url string Абсолютный путь к ресурсу (обязательный параметр)
ExpectedStatus string Ожидаемая первая строка в ответе сервера (значение по-умолчанию "HTTP/1")
UseSsl boolean Используется ли SSL при обращению к ресурсу
ContentType string Тип контента в теле запроса
Body string Тело запроса

5. HttpHead
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: HttpHead
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по умолчанию - 80
ExpectedStatus string Ожидаемая первая строка в ответе сервера (значение по-умолчанию "HTTP/1")
UseSsl boolean Используется ли SSL при обращению к ресурсу

6. Dns
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Dns
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Domain string Доменное имя, проверяемое метрикой (по-умолчанию - название хоста)
ExpectedAnswer string Ожидаемый ответ на запрос
DnsServer string DNS-сервер, к которому выполняется обращение (по-умолчанию - DNS сервер, указанный в настройках ОС точки проверки)
DnsQueryType string Проверяемый тип записи:
  • A
  • AAAA
  • TXT
  • SRV
  • MX
  • ANY

7. Ftp
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Ftp
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535
ExpectedAnswer string Ожидаемая строка в ответе сервера
UseSsl boolean Используется ли SSL при обращению к ресурсу

8. Imap
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Imap
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по-умолчанию - 143
ExpectedAnswer string Ожидаемая строка в ответе сервера
UseSsl boolean Используется ли SSL при обращению к ресурсу

9. Mysql
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Mysql
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по-умолчанию - 3306
DataBase string База данных, к которой выполняется запрос
IgnoreAuth boolean Не выполнять авторизацию при запросе
Если значение false, то два следующих параметра обязательны
User string Имя пользователя БД
Password string Пароль

10. Pop3
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Pop3
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по-умолчанию - 110
ExpectedAnswer string Ожидаемая строка в ответе сервера
UseSsl boolean Используется ли SSL при обращению к ресурсу

11. Smtp
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Smtp
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по-умолчанию - 25
ExpectedAnswer string Ожидаемая строка в ответе сервера
AuthType string Тип авторизации:
  • None - без авторизации
  • LOGIN - с использованием логин/пароля
    При использовании данного значения, обязательны следующие два параметра
User string Имя пользователя
Password string Пароль
StartTls boolean Используется ли TLS при обращению к ресурсу

12. Ssh
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Ssh
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по-умолчанию - 22

13. Ssl
Название Тип Описание
Type string Тип команды, выполняющейся при проверке: Ssl
TimeoutSec Number Время ожидания выполнения команды в секундах: 5, 10, 15
IntervalSec Number Интервал выполнения команды в секундах: 60, 300, 900, 1800, 3600
Port Number Номер порта, куда будет отправляться запрос команды: 1 - 65535, по-умолчанию - 443
SslValidDaysWarn Number За какое количество дней до истечения срока действия переводить статус метрики в warning (0, если не указано)
SslValidDaysCritical Number За какое количество дней до истечения срока действия переводить статус метрики в critical (0, если не указано)

Выходные параметры

Название Тип Описание
Id Number Уникальный идентификатор метрики мониторинга
ActiveTasks list Список активных задач, которые выполняются для данной метркики:
  1. Id - уникальный идентификатор задачи
  2. Type - тип задачи
  3. State - статус задачи на момент обработки запроса
  4. Progress- процент выполнения задачи
State string Статус хоста мониторинга на момент обработки запроса
  1. New - метрика мониторинга новая
  2. Active - метрика мониторинга существует и активна
  3. Busy - метрика мониторинга находится в обработке и недоступна для изменений
Name string Название метрики

Пример запроса

curl -X PUT -H 'Content-Type: application/json' -H 'Authorization: Bearer 75bb9805c018b1267b2cf599a38b95a3a811e2ef7ad9ca5ed838ea4c6bafaf50' "https://api.1cloud.ru/monitoring/hosts/123/metrics/321" -d '{"Command":{"Type":"HttpGet","TimeoutSec":10,"IntervalSec":300,"Port":80,"Url":"https://123.123.123.123/","UseSsl":false,"ExpectedStatus":"404"}, "Name":"TestMetricEdit"}'

Request Header

Content-Type: application/json Authorization: Bearer 75bb9805c018b1267b2cf599a38b95a3a811e2ef7ad9ca5ed838ea4c6bafaf50

Пример ответа

{
    "ActiveTasks": [
        {
            "Id": 959,
            "Type": "MetricEdit",
            "State": "New",
            "Progress": 0
        }
    ],
    "Id": 321,
    "State": "Busy",
    "Name": "TestMetricEdit",
}