Mikrotik скрипты, работа с логами


Данная заметка касается применения скриптов для своевременного оповещения об аварии.

Скрипт должен записать сообщение в основной лог микротика и отправить сообщение на почту.

Используется:

/system scripts
/system scheduler

:if ([/interface eoip get [find name="EoIP_my_001"] running]=false) do={
/log warning ("EoIP down")
/tool e-mail send to="xxxx@xxxx.xxx" from="yyyy@yyyy.yy>"
server="10.10.10.10" subject="Host is down."
}

server=10.10.10.10 - в данном случае означает сервер через который пересылается почта.

Скрипт запускает через встроенный Scheduler с нужным интервалов времени.

Вместо оповещения, можно сделать конкретное действие, добавить else для обработки если true, вопрос фантазии.

/system scheduler add name=schedule3 on-event=script_name_for_run interval=00:03:00 policy=read,write

P.S. Изменить кол-во сообщение в логе и очистить предыдущие можно таким образом:

/system logging action set disk-lines-per-file=1
/system logging action set disk-lines-per-file=100

Первая строчка устанавливаем размер лога в 1 запись, тем самым удаляет все что было до этого, вторая соответственно выставляет длину лога в 100 записей.



Размещено в разделе Mikrotik

06.07.2015

Комментарии:


Иван
2015-07-22 16:59:05

Скрипты могучая вещь, да и вообще микроты молодцы. Сейчас интересуюсь как сделать так чтобы канал распределялся динамически, т.е. имеем 10 мбит., нугрузки нет, отдаем всем ровно, появилось много клиентов, делим так чтобы никто не мог на себя забрать все и скажем оставался какой-нибудь резерв.


Sancho
2016-05-18 19:33:59

Не понятно, почему нельзя очистить логи. Может быть не туда смотрю? Нужно не забывать про SNTP, чтобы потом в этих логах разобраться.


admin
2015-09-28 18:07:47

Не знаю, может быть в другой версии работало, но перестало, сейчас верно так: /system logging action set memory memory-lines=1 /system logging action set memory memory-lines=100