(注:このブログはもう更新していません)この日記は私的なものであり所属会社の見解とは無関係です。 GitHub: takahashikzn

[クラウド帳票エンジンDocurain]

ログを出し過ぎるとEclipseが激重になる件

1か月ほど前から、Tomcatの起動時にEclipseがCPUを100%(注)占拠し、
それに伴いTomcatの起動時間が遅くなるという現象が目立ち始めていたのですが、
原因が判らず、放置していました。



(注) デュアルコアなので、名目上は50%


しかし今日、どうしても我慢ならんということで、きちんと調べることに。


で、原因が判りました。

org.springframework.beans.factory.support.DefaultListableBeanFactory

このクラスがコンソールに吐くログが原因でした。


このクラスは、ロードしたBeanの一覧を一行でログに吐くのですが、
Beanが数百個ある場合1行で数万文字のログを吐きます。これがEclipseのコンソールに大きな負荷をかけていたようです。


このクラスのログレベルをwarn以上にすると、Eclipseの負荷は大幅に低下し、
それに伴いTomcatの起動時間は遅くなる前の水準へと戻りました。


意外と簡単なオチだったなー。もっと早く調べておけばよかった。