Я довольно новичок в этом, но мне нужна помощь с настройкой моего наблюдателя. - Я использую X-Pack Watchers.
У меня настроен Heartbeat, и в настоящее время у меня 7 мониторов. то есть monitor-01 monitor-02 et c.
Мне нужна помощь в настройке моего точного сценария ios, мне нужна помощь с 3 сценариями ios:
Сценарий 1 : Если monitor-01 переходит в автономный режим, я хочу отправить ТОЛЬКО 1 электронное письмо на "test@domain.com" с текстом: "Здравствуйте, monitor-01 только что отключился! Пожалуйста, проверьте, спасибо."
Если монитор-02 переходит в автономный режим, я хочу получить тот же результат, что и выше. Я не хочу, чтобы несколько электронных писем оповещали меня каждую секунду / минуту, если монитор не работает, я хочу только 1 электронное письмо.
Сценарий 2 : если monitor-01 или какие-либо мои мониторы отключены ... Каждые 3 часа я хочу отправлять электронное письмо с обновлением sh (я хотел бы, чтобы в теле письма указывалось, как долго указывается c монитор выключен, т.е. монитор выключен на 120 часов 13 минут). Итак, если прошло 3 часа, я хочу отправить электронное письмо на «test@domain.com» с текстом: «Здравствуйте, это напоминание о том, что monitor-01 еще не подключен! Пожалуйста, проверьте, спасибо.»
Сценарий 3 : Если какой-либо из мониторов снова подключится к сети, я хочу отправить электронное письмо по адресу "test@domain.com" с текстом: "Здравствуйте, отличные новости! Monitor-02 is снова в сети. Монитор не работал 7 часов 12 минут. Спасибо. "
Может кто-нибудь помочь? Я посмотрел везде и не могу найти правильный синтаксис для создания вышеупомянутого сценария ios. Это были бы сценарии ios Я чувствую, что они могут принести пользу другим членам сообщества.
PS. У меня сейчас есть продвинутые часы, которые я нашел на форумах, но не соответствует моим критериям. Вот код для этого:
{
"trigger": {
"schedule": {
"interval": "30s"
}
},
"input": {
"search": {
"request": {
"search_type": "query_then_fetch",
"indices": [
"heartbeat-*"
],
"rest_total_hits_as_int": true,
"body": {
"query": {
"bool": {
"must": {
"match": {
"monitor.status": "down"
}
},
"filter": {
"range": {
"@timestamp": {
"from": "now-50s"
}
}
}
}
},
"aggregations": {
"by_monitors": {
"terms": {
"field": "monitor.name"
}
}
}
}
}
}
},
"condition": {
"compare": {
"ctx.payload.hits.total": {
"gt": 0
}
}
},
"actions": {
"email_admin": {
"email": {
"profile": "standard",
"from": "noreply@domain.com",
"to": [
"test@domain.com"
],
"subject": "Monitor is DOWN: {{ctx.payload.aggregations.by_monitors.buckets.0.key}}",
"body": {
"text": "Hello, there is a monitor offline currently. Please check..."
}
}
}
}
}
Приведенный выше скрипт, который я собрал, отправляет электронное письмо каждые 30 секунд, если монитор не работает, что не то, что я хочу.
Вот что говорится в электронном письме, когда все собрано вместе: Тема: Monitor is DOWN: [UAT] Тело тестового веб-сайта: Здравствуйте, в настоящее время монитор отключен. Пожалуйста, проверьте ...
Может ли кто-нибудь помочь с моим сценарием ios? Я потратил на это уже несколько дней ... много часов прошло, не так много, чтобы выйти из этого!
Спасибо.