→Java関連
→Java関連Tips
→開発支援ツール
logback†
2021年12月 Log4jRCE問題†
log4jのサイト†
log4j:WARN No appenders could be found for logger†
- log4j:WARN No appenders could be found for logger
log4jの初期化†
ClassLoader loader =
Thread.currentThread().getContextClassLoader();
URL url = loader.getResource("log4j.properties");
PropertyConfigurator.configure(url);
log4jのログファイルが出力されない、もしくはサイズ0のまま†
- WindowsでEclipseで動かしたときは動くのにTomcatにJarをロードさせて動かすと出ない場合
- Usersグループのフォルダへの書き込み権限がなかったのをフルコントロールOKに
してやると出力されるようになった(Windows Server 2008)
- ログファイルの所有者はAdministratorsなのにtomcat上のWebアプリはUsers権限で動いている模様。不思議だ
- 似たような問題として、パスの区切り文字を \ で与えているケース。\\にするか、/にするかどっちかする必要がある
- log4jのjarファイルを2箇所(例えばTomcatのlibフォルダと webapps 下のwarファイルの中のWEB-INF/libフォルダ)に入れていると、WebAppLoaderとstandardLoader で二重にロードしたというエラーがstdout.logに出力されてログが出力されない現象が起きる。
log4jでスタックトレースを出力†
static public void printStackTrace(Exception e){
StringWriter sw =new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
error(sw.toString());
}