main
Сергей Ванюшкин 2024-04-16 11:08:57 +00:00
parent 436d25d4e6
commit 920e5f6443
1 changed files with 38 additions and 0 deletions

View File

@ -6,3 +6,41 @@
## Задание ## Задание
Написать bash или python или groovy скрипт, который будет контролировать потребление памяти и генерировать alarm путем отправки http запроса на API Написать bash или python или groovy скрипт, который будет контролировать потребление памяти и генерировать alarm путем отправки http запроса на API
## Описание
Скрипт использует только стандартную библиотеку python и не требует установки зависимостей.
Утилиты free и df используются для получения данных о свободной памяти.
Реализованы несколько классов.
Абстрактный класс Command предоставляет базовый(общий для наследников) функционал.
С наследованием от Сommand реализованы классы интеракторов, для работы с указанными выше утилитами.
Функция send_alert, отправляет POST запрос со списком alert сообщений, требующих внимания.
Ендпоинт для отправки и уровни срабатывания настраиваются в коде.
Для запуска на продакшен сервере, необходимо настроить планировщик(cron, любой другой) на запуск скрипта
через необходимые промежутки времени.
Для тестирования возможен запуск скрипта с ключем --test-mode,
Данный способ запуска предназначен только ДЛЯ ТЕСТИРОВАНИЯ работоспособности и не рекомендуется для постоянной
работы.
## Установка и запуск
Клонируем:
`git clone https://git.pi3c.ru/pi3c/mem_checker.git`
Запускаем в тестовом режиме
`cd ./mem_checker`
`python ./mem_checker/mem_checker.py --test-mode`
Проверка отправки
Для полного тестирования необходим работающий ендпоинт на сервере, способный принимать POST запросы.
json формат отправляемых данных, которые должен обработать ендпоинт:
[
{
type_msg: str,
message: str
detail: str,
}
]