rsyslog: как назначить свойства в imfile?

ты должен:

  1. установить запятую как «разделитель полей по умолчанию»,

  2. Вопрос, больше ли число полей, чем 1, и есть ли содержимое в поле номер 2.

  3. Распечатайте всю строку (регистра ), используя переменную $0.

  4. Ваши данные хранятся в файле :data -Exercise.txt

Это код:

awk 'BEGIN{FS=",";}{if(NF>1 && $2!="") print $0;}' data-exercise.txt

1
05.05.2020, 17:17
1 ответ

Вы не можете изменить стандартные свойства, такие как fromhost-ip. Однако вы можете установить локальную переменную в строку и использовать ее как свойство. Например

template(name="abc" type="string" string="note %$.myvar%")
set $.myvar = "this-value";

Кроме того, imfile позволяет получить имя файла как метаданные , если вы используете параметрaddMetadata:

input(type="imfile"
      File="/my/logs/*.log"
      addMetadata="on")

Имя файла помещается в переменную $!metadata!filename.

Итак, если вы измените конфигурацию на установленную по умолчанию

set $.myvar = $fromhost-ip;

и переопределить его только для imfile, тогда вы можете использовать if $.myvarвместо if $fromhost-ipв своих правилах и иметь общие правила для всех входных данных.

0
28.04.2021, 23:16

Теги

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