mirror of
https://github.com/Dannecron/netology-devops.git
synced 2025-12-26 07:42:36 +03:00
homework 10.1: complete task 2
This commit is contained in:
@@ -73,3 +73,46 @@ vector используется в качестве принимающей то
|
||||
```
|
||||
|
||||
В данном случае считаем ответы `3xx` успешно обработанными.
|
||||
|
||||
### Задание 2
|
||||
|
||||
> Дополнительное задание
|
||||
>
|
||||
> Вы устроились на работу в стартап. На данный момент у вас нет возможности развернуть полноценную систему
|
||||
> мониторинга, и вы решили самостоятельно написать простой python3-скрипт для сбора основных метрик сервера. Вы, как
|
||||
> опытный системный-администратор, знаете, что системная информация сервера лежит в директории `/proc`.
|
||||
> Также, вы знаете, что в системе Linux есть планировщик задач cron, который может запускать задачи по расписанию.
|
||||
>
|
||||
> Суммировав все, вы спроектировали приложение, которое:
|
||||
> - является python3 скриптом
|
||||
> - собирает метрики из папки `/proc`
|
||||
> - складывает метрики в файл 'YY-MM-DD-awesome-monitoring.log' в директорию /var/log (YY - год, MM - месяц, DD - день)
|
||||
> - каждый сбор метрик складывается в виде json-строки, в виде:
|
||||
>
|
||||
> ```text
|
||||
> + timestamp (временная метка, int, unixtimestamp)
|
||||
> + metric_1 (метрика 1)
|
||||
> + metric_2 (метрика 2)
|
||||
>
|
||||
> ...
|
||||
>
|
||||
> + metric_N (метрика N)
|
||||
> ```
|
||||
>
|
||||
> - сбор метрик происходит каждую 1 минуту по cron-расписанию.
|
||||
> - количество собираемых метрик должно быть не менее 4-х.
|
||||
>
|
||||
> Для успешного выполнения задания нужно привести:
|
||||
> 1. работающий код python3-скрипта
|
||||
> 2. конфигурацию cron-расписания
|
||||
> 3. пример верно сформированного 'YY-MM-DD-awesome-monitoring.log', имеющий не менее 5 записей
|
||||
|
||||
Пример python-скрипта, который снимает некоторые метрики из файлов директории `/proc`: [monitor.py](./task2/monitor.py).
|
||||
|
||||
Конфигурация cron-расписания:
|
||||
|
||||
```text
|
||||
* * * * * monitor.py
|
||||
```
|
||||
|
||||
Пример формируемого файла: [22-09-23-awesome-monitoring.log](./task2/22-09-23-awesome-monitoring.log).
|
||||
|
||||
Reference in New Issue
Block a user