Spring Boot でコンソールにエラー以外のログを出さないようにするには、ログレベルを ERROR に設定すればOK

Spring Boot でコンソールにエラー以外のログを出さないようにするには、ログレベルを ERROR に設定すればOKです。以下の方法があります。


1. application.properties または application.yml で設定する

Spring Boot のログ設定は application.properties または application.yml で制御できます。

application.properties の場合

logging.level.root=ERROR

application.yml の場合

logging:
  level:
    root: ERROR

これで、コンソールには ERROR レベル以上(ERROR, FATAL)のログのみ出力され、それ以外(INFO, DEBUG, TRACE)は表示されません。


2. コマンドライン引数で設定する

Spring Boot を起動するときに、--logging.level.root=ERROR を指定すれば、ログレベルを変更できます。

java -jar myapp.jar --logging.level.root=ERROR

3. クラス単位で制御する

特定のパッケージやクラスごとにログレベルを制御することも可能です。

例えば、Spring の Web 関連のログをエラーだけにする場合:

logging.level.org.springframework=ERROR

4. logback.xml で設定する

Spring Boot はデフォルトで Logback を使用しているので、logback.xml を設定しても制御できます。

<configuration>
    <logger name="root" level="ERROR"/>
</configuration>


5. Java コードで設定する

アプリケーションの起動時にプログラムで設定することも可能です。

import org.slf4j.LoggerFactory;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.LoggerContext;

public class LoggingConfig {
    public static void main(String[] args) {
        LoggerContext loggerContext = (LoggerContext) LoggerFactory.getILoggerFactory();
        loggerContext.getLogger("root").setLevel(Level.ERROR);
    }
}


結論

コンソールに エラーだけ を出すなら、以下の設定が一番手軽です。

logging.level.root=ERROR

アプリケーションの種類や環境に応じて、適切な方法を選んでください。

セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。