Хобрук: Ваш путь к мастерству в программировании

Наблюдатель в elasticsearch для высокой загрузки ЦП

Я хочу настроить отправку почты наблюдателем, если загрузка ЦП за последние X минут превышает N%.

Сначала эластичный поиск получает данные с удаленного сервера через metricbeat каждую минуту. Затем я хочу, используя эти данные, сообщить администратору о высокой загрузке ЦП на удаленном сервере.

Я настраиваю почту и заканчиваю часть, если использование памяти велико, но проблема связана с использованием процессора, это 4-ядерный процессор. Я не пишу функцию и условие ggs. Я пробую что-то с кодом из github, но не могу изменить функцию для работы с metricbeat.


Ответы:


1

это сработало для меня. Он отправляет письма всякий раз, когда хост сообщает о 5 обращениях (> 95% ЦП) в минуту:

{
  "trigger": {
    "schedule": {
      "interval": "1m"
    }
  },
  "input": {
    "search": {
      "request": {
        "search_type": "query_then_fetch",
        "indices": [
          "metricbeat-*"
        ],
        "types": [],
        "body": {
          "query": {
            "bool": {
              "filter": [
                {
                  "range": {
                    "@timestamp": {
                      "gte": "now-{{ctx.metadata.window_period}}"
                    }
                  }
                },
                {
                  "range": {
                    "system.process.cpu.total.pct": {
                      "gte": "{{ctx.metadata.threshold}}"
                    }
                  }
                }
              ]
            }
          }
        }
      }
    }
  },
  "condition": {
    "compare": {
      "ctx.payload.hits.total": {
        "gte": 5
      }
    }
  },
  "actions": {
    "email_me": {
      "throttle_period_in_millis": 300000,
      "email": {
        "profile": "standard",
        "attachments": {
          "datalles.json": {
            "data": {
              "format": "json"
            }
          }
        },
        "from": "[email protected]",
        "to": [
          "[email protected]"
        ],
        "subject": "???? CPU overhead",
        "body": {
          "html": "The following hosts are running over {{ctx.metadata.threshold}}% CPU: <br><br>{{#ctx.payload.hits.hits}} <b>{{_source.beat.hostname}}</b> ({{_source.system.process.cpu.total.pct}}%) <br> {{/ctx.payload.hits.hits}}"
        }
      }
    }
  },
  "metadata": {
    "window_period": "1m",
    "threshold": 0.95
  }
}
09.03.2018
  • Где взять документы для этих языков шаблонов, например {{#xxx}} ... {{/xxx}}? 01.04.2019
  • Я полагаю, вы ищете усы 08.04.2019
  • Мой вопрос заключается в том, будет ли этот запрос искать среднее использование ЦП или максимальный процент использования ЦП за последнюю минуту. 08.04.2019
  • Новые материалы

    Почему шаблоны проектирования и почему нет?
    Сложность — мать всех проблем в программировании. Программное обеспечение должно быть разработано с точки зрения того, кто его поддерживает, а не того, кто его пишет, потому что программное..

    Создание дизайна обуви с помощью машинного обучения
    Обувь. Что подождать? Я думал, что речь пойдет о машинном обучении! Ну это так. Если бы вы пошли на Amazon, сколько обуви вы бы нашли? Наверное, много, не так ли? Но много ли в них..

    GraalVM в 2022 году: итоги года
    2022 год был очень продуктивным для проекта и сообщества GraalVM. Вместе мы разработали множество новых функций, выпустили GraalVM для последних версий Java и новых платформ и увидели несколько..

    Быстрая разработка: волшебный мир больших языковых моделей
    РУКОВОДСТВО Быстрая разработка: волшебный мир больших языковых моделей Подход, основанный на данных, для получения наилучшего ответа Искусство и наука Можно ли совместить машинное..

    Ускоренный курс по Node Redis
    Сегодня мы будем учиться использовать Redis в Node.js, однако я не собираюсь вываливать сюда всю документацию и утомлять вас до смерти. Это руководство для начинающих? — спросите вы. Ну..

    Обзор Python для науки о данных и машинного обучения
    Python стал наиболее предпочтительным языком программирования среди разработчиков, которые в основном занимаются наукой о данных и машинным обучением. Интуитивно понятные и уникальные функции..

    Принудительный сброс состояния компонента React с помощью ключевого свойства
    Принудительный сброс состояния компонента React с помощью ключевого свойства Знаете ли вы, что вы можете использовать опору key для принудительного сброса состояния компонента? В..