2012-04-03 5 views
-2

標準のロギングコードでは、標準名のロガーのインスタンス化や匿名のロガーの使用は動作していないようです。以下AppEngineのサーブレットフィルタからログすることはできますか?

コード:

private static final Logger logger = Logger.getLogger(UserAccessFilter.class 
    .getCanonicalName()); 

// ... 
public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) 
    throws IOException, ServletException { 
    if (!UsersHelper.isValid(req)) { 
    logger.log(Level.WARNING, getErrorMessage(req)); 
    // ... some error serving code 
    } else { 
    chain.doFilter(req, resp); 
    } 
} 

答えて

2

はい、サーブレットフィルタからログオンできます。私は自分のコードでそれをやっています。

私はあなたが情報レベルでロギングしていると思いますが、App Engineはデフォルトで警告とそれ以上を報告します。 WEB-INF/logging.propertiesを見て、.level = INFOを追加/置き換えてINFOメッセージを表示します(またはWARNING +メッセージを記録します)。

0

サーブレットフィルタは単なるクラスなので、次のことができるようにすべきです。どのような "標準ログコード"を試しましたか?

+0

私は自分のコードを投稿しました。 – tarun2000

+0

アプリケーションの他の領域でロギングが機能していますか?それはうまくいくはずです。 logging.propertiesを見て、ログオフしていないことを確認してください。 –

+0

はい、logging.propertiesが問題でした。ありがとう! – tarun2000

関連する問題