Перейти к содержимому
Калькуляторы

Исполняемый скрипт по событию в логах

Всем привет! Ребята помогите по скрипту)

Задача-чтоб по событию в логах (к примеру по последним 5-10 строчкам) он отслеживал определённое соответствие (к примеру "user ETH0000404 authentication failed") и срабатывала какая либо команда.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Логи можно парсить скриптом. Вот примеры: 1 и 2.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

получается что то типа :if [/log find message~"logged in" || message~"login failure"] do={ /ppp aaa set accounting=yes use-radius=yes }

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Логи можно парсить скриптом. Вот примеры: 1 и 2.

Nuts не хватит у меня тямы((( если не сложно помоги)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

вот так короча получается но сейчас он все строки логов перебирает а надо только последние несколько :if ([find message~"authentication failed - radius timeout"] != "") do={/system reboot}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ограничьте в логе 10 строчек и все станет работать нормально.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ограничьте в логе 10 строчек и все станет работать нормально.

Не, не получится чёткой работы(( я всё ж борюсь с карбонбиллингом что при всякой очередной пакости не бегать.

 

Логи то всё равно нужны и тем более по ошибкам особенно авторизации абонов

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как вариант, можно и без скрипта. Воспользоватся System -> Loging. В разделе Actions создать новую запись send -> e-mail и потом новую rules с нужным topics согласно нужному. Конечно, придётся заполнить Tools -> e-mail.

 

/system logging action

add email-start-tls=yes email-to=adress@gmail.com name=send target=email

add action=send prefix=от_куда topics=dude,critical

 

аааа, это не то, что нужно.

Изменено пользователем mafijs

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут смысл в том чтоб к примеру по последним 5-10 строкам отмежевался тайаут радиус сервера с присутствием в логах "authentication failed - radius timeout" и если таковой есть то срабатывал скрипт перенастройки сервера PPPoE. В /system logging action я уже заглядывал, не получится без сторонних приложений. Я хочу до ума довести схему управления микротиком+pppoe+simple queue+carbon billing5. По IP адресу через нетватч уже всё собрал в кучу и хочу чтоб ещё логи так же мониторились так как я хз почему но иногда по утру у карбона глючит радиус сервер.

 

не соображу как в условии срабатывания добавить чтоб мониторил именно последние строки(((

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Могу предложить идею. Закончить решение сейчас не могу (поздно, голова уже не варит).

Следующими командами мы получим ID последнего события в логах:

:local CurTime "$[/system clock get date] $[/system clock get time]"
:log warning "$CurTime marker"
:local LastEvent [/log find message="$CurTime marker"]

Этот ID хитрый: представляет из себя hex число с префиксом * .

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

Также, вместо ID, можно оперировать временем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не нужны вам скрипты. Делаете софт на винде, который принимает лог от сервера - в нем есть все эти таймауты. Как увидели - отправляете по ssh на микротик нужные команды - например перезагрузку, если это требуется, вот и все дела.

 

Логи то всё равно нужны и тем более по ошибкам особенно авторизации абонов

 

Обычно в логах авторизации указано, что такой то абонент - ошибка аутентификации. И так много много раз. Поэтому из логов нужно выдергивать нужное, и не писать по 100 раз одно и то же, для анализа администратором.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.