SLF4J、Logback、Log4Jの違いや関係を挙動とともに整理してみます。 SLF4Jとは Javaのロギング実装の柔軟な切り替えを実現するFacadeのことをSLF4Jといいます。 ※SLF4J Facade(ファサード)とは「建物の正面」を意味していて、GoFのデザインパターンの1つ「Facadeパターン」のことを指します。以下はFacadeパターンのクラス図です(TECHSCOREより)。 Javaのロギング実装には、Log4JやLog4J 2、Logback等がありますが、これらの実装の窓口となるのがSLF4Jです。上記図では、FacadeがSLF4J、classAがLog4J、classBがLogbackなイメージです。 公式にある以下の図がイメージしやすいかと思います。 つまり、アプリケーションから見るとSLF4Jはロギング実装のインターフェースの役割を担い、Logbac