0

私のScalaアプリケーションは、Play Framework 2.1とSolrJ(V. 4.0)を使用してSolrと通信します。

  • テストを実行すると( ) 、SolrJからplay test非常に長い迷惑なメッセージのリストが表示されます。DEBUG org.apache.http.*:-(
  • アプリケーションを実行するplay runと( )、SolrJからのデバッグメッセージが表示されません。:-)

conf/application.confすべてのロガーレベルでINFOに設定されています。

logger.root=INFO
logger.play=INFO
logger.application=INFO

自分でconf/application-logger.xmlファイルを作成しようとしていますが、SolrjからのDEBUGメッセージは同じままです。

テスト中にDEBUGメッセージを取り除くにはどうすればよいですか?

古いStackoverflow-これに関する質問を読みましたが、答えが機能しません(Play 1の質問だったと思います)。

4

1 に答える 1

1

Javaコードでログレベルを動的に変更してみることができます。

 private static void modifyLogLevel() {
    @SuppressWarnings("unchecked")
    Enumeration<Logger> e = Logger.getRootLogger().getLoggerRepository().getCurrentLoggers();
    while (e.hasMoreElements()) {
        Logger curLogger = e.nextElement();
        if (curLogger.getName().contains("org.apache")){
            curLogger.setLevel(Level.INFO);
        }
    }
    Properties props = new Properties();
    props.put("log4j.logger.org.apache","ERROR");
    PropertyConfigurator.configure(props);}
于 2013-02-27T08:43:40.347 に答える