それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

rsyslog で特定のプログラムやメッセージを条件にする

プログラム名で転送する

if ( $programname == "docker-compose" ) 

if ( $programname == "docker-compose" )  then {
  *.* action(type="omfwd"
          target="192.168.112.11"
          Port="514"
          Protocol="tcp"
  )
}

文字列で仕分ける

if ( msg contains "docker" ) then { ... }

メッセージのプロパティ

rsyslog Properties — rsyslog 8.18.0.master documentationをみると、いろいととありそう。

使うのは、msg/rawmsg/programname ぐらいかな。 - msg - rawmsg - rawmsg-after-pri - hostname - source - fromhost - fromhost-ip - syslogtag - programname - pri - pri-text - iut - syslogfacility - syslogfacility-text - syslogseverity - syslogseverity-text - syslogpriority - syslogpriority-text - timegenerated - timereported - timestamp - protocol-version - structured-data - app-name - procid - msgid - inputname - $bom - $myhostname - $myhostname - $now - $year - $month - $day - $hour - $hhour - $qhour - $minute

参考資料

rsyslog マニュアル