私はwildflyを使用しており、FILEログハンドラの出力に問題があります。これは、スタックトレースのエラーのすべての行を完全な形式のフォームで出力します。ここでは、cutted例です。私は一度だけ先頭に"12:13:11,238 ERROR [stderr] (default task-48)"
と行と「時」で始まるスタックトレースのすべてのパーティーを持っていると思ったすべてのスタックトレース行にWildflyのログ日付
12:13:11,238 ERROR [stderr] (default task-48) org.apache.shiro.authc.UnknownAccountException: Realm [[email protected]a1] was unable to find account data for the submitted AuthenticationToken [org.apache.shiro.authc.UsernamePasswordToken - XXX, rememberMe=false].
12:13:11,238 ERROR [stderr] (default task-48) at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doSingleRealmAuthentication(ModularRealmAuthenticator.java:184)
12:13:11,238 ERROR [stderr] (default task-48) at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doAuthenticate(ModularRealmAuthenticator.java:267)
12:13:11,238 ERROR [stderr] (default task-48) at org.apache.shiro.authc.AbstractAuthenticator.authenticate(AbstractAuthenticator.java:198)
12:13:11,238 ERROR [stderr] (default task-48) at org.apache.shiro.mgt.AuthenticatingSecurityManager.authenticate(AuthenticatingSecurityManager.java:106)
...
ない新しいと解釈新しいログ行としてログライン。
追加のSMTPログハンドラがありますが、同じ問題があります。したがって、スタックトレースのすべての行について電子メールを送信し、エラーまたは例外ごとに電子メールを送信することはありません。
ありがとうございます。これは、Apache史郎コードにあった場合、私は本当に驚くだろう
try {
// do something that throws an exception
} catch (SomeException e) {
e.printStackTrace();
}
:誰かが自分のコードに次のようなものを残しているよう
スタックトレースは印刷されません。また、私は2つのログファイル、サーバーログとアプリケーションログを持っているので、私はアプリケーションでlogbackを使用します。私はすでにそれを記述した方法で例外処理を行い、logbackを使ったアプリケーションログはうまく見えますが、wildflyサーバログの同じエラーが上記のように見えるので、これはwildflyエラー処理の問題です。 – DaTa
Logback ConsoleAppenderを使用していますか? –
偉大な、それは正しいヒントだった。私はコンソールアペンダーを削除し、それは正常に動作します。どうもありがとう。 – DaTa