Системный Администратор | Sysadmin Windows & Linux Server. Настройка Сети, ПК и Железа. IT Уроки для Сисадмина: Безопасность, Софт и Техподдержка (Helpdesk). Компьютерная помощь.
IT и технологии · 21 октября 2026 г.
Скрипт для Mikrotik: Обнаружение новой записи в журнале
Скрипт для Mikrotik: Обнаружение новой записи в журнале Этот скрипт проверяет, добавлена ли новая запись в журнал в определенный буфер. В этом примере мы будем использовать журналы PPPoE: /system logging action add name="pppoe" /system logging add action=pppoe topics=pppoe,info,!ppp,!debug Буфер журнала будет выглядеть примерно так же, как этот: [admin@mainGW] > /log print where buffer=pppoe 13:11:08 pppoe,info PPPoE connection established from 00:0C:42:04:4C:EE Теперь мы можем написать скрипт, который будет определять, добавлена ли новая запись. :global lastTime; :global currentBuf [ :toarray [ /log find buffer=pppoe ] ] ; :global currentLineCount [ :len $currentBuf ] ; :global currentTime [ :totime [/log get [ :pick $currentBuf ($currentLineCount -1) ] time ] ]; :global message ""; :if ( $lastTime = "" ) do={ :set lastTime $currentTime ; :set message [/log get [ :pick $currentBuf ($currentLineCount-1) ] message]; } else={ :if ( $lastTime < $currentTime ) do={ :set lastTime $currentTime ; :set message [/log get [ :pick $currentBuf ($currentLineCount-1) ] message]; } } После обнаружения новой записи она сохраняется в переменной «message», которую в дальнейшем можно использовать для анализа сообщений журнала, например, для получения mac-адресов PPPoE-клиентов. 👉 @i_odmin