背景
システムリプレースに伴い各種プラグインのバージョンを最新化
動作確認中にシステム終了時のログが出力されていないことに気付く。
構成
java9、Tomcat9、logback+slf4j、Springframework
発生の要因
logbackのバージョンを1.0.13から1.2.3への変更
発生箇所
javax.servlet.ServletContextListener#contextDestroyedをimplementsしたリスナークラスでシステム終了時にログを出していた。
対処1
logbackコンテキストの停止
logbackのサイトに従いコンテキストの停止を追加
https://logback.qos.ch/manual/configuration_ja.html#stopContext
しかし、これだけでは解決せず。
対処2
web.xmlへlogbackDisableServletContainerInitializerの追加
日本語訳のページには無かったが英語のページに答えが有った
https://logback.qos.ch/manual/configuration.html#webShutdownHook
対処2の設定を追加したら無事ログが出力されるようになった。