LINUX.ORG.RU

Сообщения sergio_sd

 

RSYSLOG regexp

Добрый день, коллеги. Всех с наступающим праздником ДСА2018!!!

Помогите распарсить строку штатными стредствами regexp в rsyslog. Есть логи маршрутизатора которые валятся на rsyslog вот примерно такого вида: BLOCKSMKNETS forward: in:ether6 - Local TORF out:VLAN55 RT_INET, src-mac 5c:9a:d8:65:99:b7, proto TCP (SYN), 192.168.0.141:62632->192.168.6.18:65535, len 52

Средствами логгера надо отделить зерна от плевел и положить в БД. Например из части «in:ether6» надо убрать «in:», с помощью конструкции:

(?<=(in:))[a-x0-9]+

Тут получилось https://regex101.com/r/aznNLN/1

А тут не получается https://www.rsyslog.com/regex/

К сожалению на последнем сервисе нет возможности сохраниться поэтому покажу часть конфига rsyslog: $template msgmake3,"msgmake3 %timereported:::date-mysql% %msg:R,ERE,0,BLANK:(?<=(in:))[a-x0-9]+--end%\n" ... :msg, contains, "BLOCKSMKNETS" /var/log/remote/smtp.log;msgmake3 На выходе получаем: msgmake3 20180726163813 **NO MATCH** **BAD REGULAR EXPRESSION**

В чем может быть дело? кто еще страдает такой фигней, как разбор логов на лету?

 , ,

sergio_sd
()

RSS подписка на новые темы