Skip to content

Commit 55d35c1

Browse files
committed
Новые проверки
1 parent 6dd8eba commit 55d35c1

7 files changed

Lines changed: 100 additions & 1 deletion

main.os

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
Приложение.Версия("v version", ПараметрыПриложения.Версия());
1313

1414
Приложение.ДобавитьКоманду("disk", "Проверка дисков", Новый КомандаПроверкаДисков);
15+
Приложение.ДобавитьКоманду("ram", "Проверка памяти", Новый КомандаПроверкаПамяти);
16+
Приложение.ДобавитьКоманду("cpu", "Проверка процессора", Новый КомандаПроверкаПроцессора);
1517

1618
Приложение.УстановитьОсновноеДействие(ЭтотОбъект);
1719
Приложение.Запустить(АргументыКоманднойСтроки);
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Процедура ВыполнитьКоманду(Знач Команда) Экспорт
2+
3+
Лог = Мониторинг.Лог();
4+
Лог.Отладка("Проверка памяти через команду ram" );
5+
6+
Мониторинг.ВыполнитьПроверки("ПроверкаПамяти");
7+
8+
КонецПроцедуры
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Процедура ВыполнитьКоманду(Знач Команда) Экспорт
2+
3+
Лог = Мониторинг.Лог();
4+
Лог.Отладка("Проверка процессора через команду cpu" );
5+
6+
Мониторинг.ВыполнитьПроверки("ПроверкаПроцессора");
7+
8+
КонецПроцедуры

src/Модули/Мониторинг.os

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,23 @@
2626

2727
Проверки = Новый Соответствие();
2828
Проверки.Вставить("ПроверкаДисков", ПроверкаДисков);
29+
Проверки.Вставить("ПроверкаПамяти", ПроверкаПамяти);
30+
Проверки.Вставить("ПроверкаПроцессора", ПроверкаПроцессора);
2931

3032
Возврат Проверки;
3133

3234
КонецФункции
3335

36+
Функция ДанныеСистемы(ТекстЗапроса) Экспорт
37+
38+
WMI = Новый COMОбъект("WbemScripting.SWbemLocator");
39+
Сервис = WMI.ConnectServer(".", "root\cimv2");
40+
Результат = Сервис.ExecQuery(ТекстЗапроса);
41+
42+
Возврат Результат;
43+
44+
КонецФункции
45+
3446
#КонецОбласти
3547

3648
#Область Логирование
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
#Использовать logos
2+
3+
Перем Лог;
4+
5+
Процедура ВыполнитьПроверку(ПараметрыПроверки) Экспорт
6+
7+
Лог = Мониторинг.Лог();
8+
Лог.Информация("Начало проверки памяти");
9+
10+
Порог = ПараметрыПроверки["Порог"];
11+
ДанныеПамяти = Мониторинг.ДанныеСистемы("SELECT * FROM Win32_OperatingSystem");
12+
13+
Для Каждого Элемент Из ДанныеПамяти Цикл
14+
15+
ОбщаяПамять = Элемент.TotalVisibleMemorySize;
16+
СвободнаяПамять = Элемент.FreePhysicalMemory;
17+
ИспользованнаяПамять = ОбщаяПамять - СвободнаяПамять;
18+
ПроцентИспользования = Окр((ИспользованнаяПамять / ОбщаяПамять) * 100, 0);
19+
20+
Если ПроцентИспользования > Порог Тогда
21+
22+
Лог.Ошибка("Использовано памяти %1%%, что превышает порог %2%%.",
23+
ПроцентИспользования, Порог);
24+
25+
Иначе
26+
27+
Лог.Информация("Использовано памяти %1%%",
28+
ПроцентИспользования);
29+
30+
КонецЕсли;
31+
32+
КонецЦикла;
33+
34+
Лог.Информация("Завершение проверки памяти");
35+
36+
КонецПроцедуры
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
#Использовать logos
2+
3+
Перем Лог;
4+
5+
Процедура ВыполнитьПроверку(ПараметрыПроверки) Экспорт
6+
7+
Лог = Мониторинг.Лог();
8+
Лог.Информация("Начало проверки процессора");
9+
10+
Порог = ПараметрыПроверки["Порог"];
11+
ДанныеПроцессора = Мониторинг.ДанныеСистемы("SELECT * FROM Win32_Processor");
12+
13+
Для Каждого Элемент Из ДанныеПроцессора Цикл
14+
15+
ПроцентЗагрузки = Элемент.LoadPercentage;
16+
17+
Если ПроцентЗагрузки > Порог Тогда
18+
19+
Лог.Ошибка("Загрузка процессора %1%%, что превышает порог %2%%.",
20+
ПроцентЗагрузки, Порог);
21+
22+
Иначе
23+
24+
Лог.Информация("Загрузка процессора %1%%",
25+
ПроцентЗагрузки);
26+
27+
КонецЕсли;
28+
29+
КонецЦикла;
30+
31+
Лог.Информация("Завершение проверки процессора");
32+
33+
КонецПроцедуры

src/Модули/УведомленияТелеграм.os

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
Сообщение = Заголовок + Символы.ПС + Символы.ПС + Текст;
2424

25-
АдресРесурса = "api.telegram.org/bot" + Токен + "/sendMessage";
25+
АдресРесурса = "https://api.telegram.org/bot" + Токен + "/sendMessage";
2626

2727
Для Каждого Получатель Из Получатели Цикл
2828

0 commit comments

Comments
 (0)