From 920e5f6443422457400c75c4ea0c8550b4e1bf76 Mon Sep 17 00:00:00 2001 From: Sergey Vanyushkin Date: Tue, 16 Apr 2024 11:08:57 +0000 Subject: [PATCH] sync --- README.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/README.md b/README.md index cfa8c0e..2f7715c 100644 --- a/README.md +++ b/README.md @@ -6,3 +6,41 @@ ## Задание Написать 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, + } + ]