rsyslog регулярное выражение не станет жадным

Добро пожаловать в ад.

Вы можете просто передать объект datetime64 в pandas.Timestamp:

In [16]: Timestamp(numpy.datetime64('2012-05-01T01:00:00.000000'))
Out[16]: <Timestamp: 2012-05-01 01:00:00>

Я заметил, что это не работает правильно, хотя в NumPy 1.6. 1:

numpy.datetime64('2012-05-01T01:00:00.000000+0100')

Также можно использовать pandas.to_datetime (это отключено от версии dev, не проверено v0.9.1):

In [24]: pandas.to_datetime('2012-05-01T01:00:00.000000+0100')
Out[24]: datetime.datetime(2012, 5, 1, 1, 0, tzinfo=tzoffset(None, 3600))
0
задан peacemaker 17 January 2019 в 11:57
поделиться

1 ответ

Если вам нужно сопоставить только 2 ips, вы можете просто повторить шаблон регулярного выражения в 2 заменителях свойств, где второй указывает, что должен быть взят второй соответствующий ip-адрес.

Используя «...» для обозначения паттерна [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}, просто чтобы сделать его более читабельным, вы получите

%msg:R,ERE,0,FIELD,0:...--end%
%msg:R,ERE,0,FIELD,1:...--end%

или полностью:

$template outfmt,"%msg:R,ERE,0,FIELD,0:[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}--end%  %msg:R,ERE,0,FIELD,1:[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}--end%\n"
0
ответ дан meuh 17 January 2019 в 11:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: