Traffic Monitor улучшенный & Отправка мыла при нагрузке CPU.

Здесь выкладываем скрипты
Правила форума
Уважаемые Пользователи форума, обратите внимание!
Ни при каких обстоятельствах, Администрация форума, не несёт ответственности за какой-либо, прямой или косвенный, ущерб причиненный в результате использования материалов, взятых на этом Сайте или на любом другом сайте, на который имеется гиперссылка с данного Сайта. Возникновение неисправностей, потерю программ или данных в Ваших устройствах, даже если Администрация будет явно поставлена в известность о возможности такого ущерба.
Просим Вас быть предельно осторожными и внимательными, в использовании материалов раздела. Учитывать не только Ваши пожелания, но и границы возможностей вашего оборудования.
Ответить
23q
Сообщения: 57
Зарегистрирован: 16 май 2013, 11:21

Так как Traffic Monitor в микротик недоколыханный :-) , соорудил свой скриптик, который следит за трафиком на интерфейсе(копирую свой пост с офф сайта):

Код: Выделить всё

# Watch interface
:local interface "WAN"
/interface monitor [/interface find name=$interface] once do={
 :global txbps1 $("tx-bits-per-second");
 :global rxbps1 $("rx-bits-per-second");
}
:delay 60
/interface monitor [/interface find name=$interface] once do={
 :global txbps2 $("tx-bits-per-second");
 :global rxbps2 $("rx-bits-per-second");
}
:global rxbps1
:global rxbps2
if ((($rxbps1) >= 10000000) and (($rxbps2) >= (10000000))) do={/system script run mario} else={:log info "vse ok"}


:delay 60 - delay between checks in seconds
10000000 maximum response script( bits per second)

script to the scheduler for 10 seconds

У меня играло супер-марио, это значило что кто-то качает сверх нормы, шейпер в данному случае не используем.
--------------------------------
И второй скрипт отпраляет мыло при нагрузке на про более 91 процент в течении 2 минут:

Код: Выделить всё

:global cpu1 [/system resource get cpu-load];
:delay 120;
:global cpu2 [/system resource get cpu-load];
:local time1 [/system clock get time];
:local body1 "$time1 Mikrotik over 91% CPU";
if ((($cpu1) >= 91) and (($cpu2) >= (91))) do={/tool e-mail send server=[:resolve "smtp.yandex.ru"] port=587 user=x@ya.ru password=xxxxx start-tls=yes to="x@ya.ru" from=x@ya.ru subject="Mikrotik Office" body="$body1"; /system scheduler disable schedule_cpu} else={}


Отсылает и потом себя отключает, что б не спамил.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

А в чем заключается улучшение?


Есть интересная задача и бюджет? http://mikrotik.site
vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

То есть если у вас загрузка будет 90% и потом 100% Ваш скрипт будет считать что все хорошо.
А если микрот начнет колбасить то тоже все хорошо


Есть интересная задача и бюджет? http://mikrotik.site
23q
Сообщения: 57
Зарегистрирован: 16 май 2013, 11:21

Трафик монитор как инструмент организован не полно, учитывает спонтанные нагрузки на интерфейс длительность например 1-2 секунды(прогрузка например страницы мелкософта, burst-спид короче). Количество попыток и задержки между ними выставить нельзя.

vqd писал(а):То есть если у вас загрузка будет 90% и потом 100% Ваш скрипт будет считать что все хорошо.

именно, при следующей проверке в шедуллере отработает. Сделано, что б не было ложных срабатываний.

vqd писал(а):А если микрот начнет колбасить то тоже все хорошо

что вы мне предлагаете?)
я поделился реализацией, которая у меня хорошо отрабатывала. под свойи нужды кому надо доработает, или напишет свой. Мне надо было следить за нагрузкой CPU.


vqd
Модератор
Сообщения: 3605
Зарегистрирован: 26 сен 2013, 14:20
Откуда: НСК
Контактная информация:

Я просто не увидел разницы в работе вашего скрипта и траффик монитора. Ваш скрипт тоже не увидит спонтанные нагрузки в несколько секунд. Ибо вы не мониторите интерфейсы а тупо снимаете показания с задержкой в минуту. Другое дело если бы вы мониторили его. Тогда да, а так тот же траффик монитор только в виде скрипта

Аналогично и с мониторингом загрузки процессора

Только когда вы заморочитесь именно мониторингом сразу скажу. Пишите доп скрипт который передергивает этот самый мониторинг, а то иногда проблемы мелкие возникают


Есть интересная задача и бюджет? http://mikrotik.site
23q
Сообщения: 57
Зарегистрирован: 16 май 2013, 11:21

vqd писал(а):Я просто не увидел разницы в работе вашего скрипта и траффик монитора. Ваш скрипт тоже не увидит спонтанные нагрузки в несколько секунд. Ибо вы не мониторите интерфейсы а тупо снимаете показания с задержкой в минуту. Другое дело если бы вы мониторили его. Тогда да, а так тот же траффик монитор только в виде скрипта

Аналогично и с мониторингом загрузки процессора

Только когда вы заморочитесь именно мониторингом сразу скажу. Пишите доп скрипт который передергивает этот самый мониторинг, а то иногда проблемы мелкие возникают

трафик монитор УЧИТЫВАЕТ! спонтанные нагрузки на интерфейс. Скрипт НЕ УЧИТЫВАЕТ! Ради этого собственно все и затевалось.


Ответить