Итак, у меня есть проверка консула, которая следит за контейнером и предназначена для критического состояния при остановке контейнера. Я хочу создать часы консула, которые будут запускать сценарий после того, как проверка станет критической или после нескольких критических ответов (например, если моя проверка отправляет 5 критических ответов, я хочу, чтобы она запускала сценарий).
Вот json для моей рабочей проверки и мое предположение о том, как могут выглядеть мои часы:
{
// this check works
"checks": [
{
"id": "docker_stuff",
"name": "curl test",
"notes": "curls the docker container",
"script": "/scripts/docker.py",
"interval": "1s"
}
],
//this watch doesn't work
"watches": [
{
"Node": "client2",
"CheckID": "docker-stuff",
"Name": "docker-stuff-watch",
"Status": "critical",
"Status_amt": "5",
"handler": "/scripts/new-docker.sh",
"Output": "container relaunched",
}
]
}
Что мне нужно изменить в часах, чтобы они заработали?
Нужно ли мне также использовать событие консула, чтобы наблюдать за моей проверкой состояния, а затем запускать наблюдение консула (типа события), которое запускает мой /scripts/new-docker.sh
скрипт? Если да, то как мне организовать мероприятие консула, которое следит за моей проверкой здоровья? Например, если бы это был мой консулский чек, часы и мероприятие, что мне нужно было бы изменить, чтобы это заработало?
{
"checks": [
{
"id": "docker_stuff",
"name": "curl test",
"notes": "curls the docker container",
"script": "/scripts/docker.py",
"interval": "1s"
}
],
"watches": [
{
"type": "event",
"name": "docker-stuff-watch",
"handler": "/scripts/new-docker.sh"
}
],
"events": [
{
"Node": "client2",
"CheckID": "docker-stuff",
"Name": "docker-stuff-event",
"Status": "critical",
"Status_amt": "5",
"Output": "container relaunched",
}
]
}