続Shibboleth-IdPのログをfluentdのin_tailで拾うための正規表現

Shibboleth-IdPのログをfluentdのin_tailで拾うための正規表現 - kame-tの日記
の続きでidp-process.logを取り込む
Shibboleth-IdPのデフォルトの設定では

<Pattern>%date{HH:mm:ss.SSS} - %level [%logger:%line] - %msg%n</Pattern>

となっている
(1) ミリ秒の表記は
instance method Time#strftime
から"%L"でOK
(2) Javaのエラーが複数行に渡る問題は
tomohisaota/fluent-plugin-tail-multiline · GitHub
のpluginで対応できる

fluent.confには

<source>
  type tail_multiline
  path /opt/shibboleth-idp-2.4.0/logs/idp-process.log
  format /^(?<time>[^ ]+) - (?<level>[^ ]+)  \[(?<logger>[^\:]*)\:(?<line>[^\]]*)\] - (?<message>.*)/
  time_format %H:%M:%S.%L
  tag shibboleth-idp.process
</source>

と書くとよさそう