LINUX.ORG.RU

Сообщения arias88

 

Поиск и сохранение части текста в rsyslog

Форум — General

Добрый день, всем!

Столкнулся с такой проблемой, есть syslog сообщение (msg непосредственно) следующего вида: «10.100.20.30 I0515 14:46:45.069611 blablabla»

Пытаюсь сделать 2 вещи:

  1. удалить в начале строки ip адрес с пробелом и уже измененную строку сохранить в файл;
  2. вырезать ip адрес в начале строки и сохранить в отдельном поле сообщения.

Решил сначала решить задачу из п.2 следующим образом: constant(value=«",\n\t"sysloghost-ip":\t"») property(name=«msg» regex.type=«ERE» regex.submatch=«0» regex.expression=«([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3})–end» regex.nomatchmode=«FIELD» format=«json»)

пытался и таким образом (чтобы писанины было меньше) constant(value=«",\n\t"sysloghost-ip":\t"») property(name=«msg» regex.type=«ERE» regex.submatch=«0» regex.expression=«(^([0-9]{1,3}.?){4})–end» regex.nomatchmode=«FIELD» format=«json»)

Если в первом варианте сохранялась просто исходная строка, то во втором случае, вообще все перестало сохраняться.

Где я ошибся или возможно делать что-то не так? Сразу оговорюсь, регулярное выражение генерировал на сайте https://www.rsyslog.com/regex/ , там все хорошо обрезается.

 , ,

arias88
()

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