続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>
と書くとよさそう