#elasticsearch #kibana #alert
Вопрос:
Я постоянно отправляю данные о состоянии моей машины Ubuntu в elasticsearch с помощью td-агента. Эти данные о работоспособности содержат температуру процессора, которую я должен контролировать. Поэтому я создал оповещения, в которых значение температуры увеличивается до более чем 60*F, оно выдает оповещения на моем канале Microsoft Teams. Вся эта настройка работает нормально.
Ниже приведены данные журналов:
{
"_index": "health_skl_gateway",
"_type": "_doc",
"_id": "DwxjinkBwxSy0OQ_4rhS",
"_version": 1,
"_score": null,
"_source": {
"Data": {
"WiFiIP": "N/A",
"signal_strength": "N/A",
"signal_percent": 0,
"signal_level": "N/A",
"EthIP": "192.168.100.30 ",
"TotalDisk": "916G",
"UsedDisk": "40G",
"FreeDisk": "830G",
"DiskPercent": "5%",
"TotalRAM": "16312468",
"UsedRAM": "3735596",
"FreeRAM": "5866548",
"CPU": 27,
"cpu_temp": 57,
"Internet": true,
"Publish msg count": 442,
"Created": "2021-05-20T15:26:51.557564",
"DeviceId": "TX-G1-318",
"UpTime": "2021-05-19T07:13:05"
},
"hostname": "TX-G1-318",
"Version": "V2"
},
"fields": {
"Data.UpTime": [
"2021-05-19T07:13:05.000Z"
],
"Data.Created": [
"2021-05-20T15:26:51.557Z"
]
},
"sort": [
1621524411557
]
}
В предупреждении Кибаны я установил оповещения, в которых, если значение count
равно 3 из всех документов индекса health_skl_gateway
, для последнего 10 minutes
, где Data.cpu_temp
больше 60
, оно генерирует оповещения для канала Microsoft Teams. Теперь ниже показано, как я настроил сообщение, которое отправляется командам Microsoft
Поэтому в сообщении я просто отправляю статическое текстовое сообщение. Но я хочу отправить фактическое Data.cpu_temp
значение в сообщении.
Возможно ли это? Как мы можем это сделать? Спасибо
Ответ №1:
Вы пробовали использовать двойные скобки? Подобный этому. Я предполагаю, что сопоставление выполняется одинаково для всех типов предупреждений.
В примере мониторинга сервера используется тип действия электронной почты, и сервер сопоставляется с телом электронной почты, используя строку шаблона, ЦП на {{сервере}} является высоким.
Комментарии:
1. Я тебя не понял. Как использовать значение Data.cpu_temp в формате сообщения.?
2. Моя идея была чем-то вроде
{{data.cpu_temp}}
или около того. Сообщения Kibana используют синтаксис шаблона усов . Также кажется, что поля, которые вы можете использовать в сообщении, ограничены, но вы должны проверить, что доступно для вашего случая, это описано https://mustache.github.io .3. Я действительно пытался использовать `{{Data.cpu_temp}}, но это не сработало.