2012-03-09 4 views

答えて

4

あなたは簡単に

JDO2 InstanceLifecycleListenersはあなたがイベントをインターセプトできるようになるが、私はSQLを考えていない(http://www.datanucleus.org/products/datanucleus/logging.htmlを参照)カテゴリDataNucleus.Datastore.NativeをオンにすることでDataNucleusのからのすべてのSQL文のログを取得することがあり文は

あなたはまた、SQLプロファイリングツールのためのアプリサーバーに見ることができます...が利用できるようになります。たとえば、GlassFishではSQLTraceListenerの実装を接続プールにアタッチできます。あなたはDataNucleusのでjava.util.loggingまたはLog4jを使用することができますhttp://docs.oracle.com/cd/E18930_01/html/821-2418/giyck.html#giygg

0

Log4jの

を参照してください。 Log4jの設定について説明します。

log4j.properties

# Define the destination and format of our logging 
log4j.rootCategory=DEBUG, stdout 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{1}:%M:%L - %m%n 

# DataNucleus Categories 
log4j.category.DataNucleus=ALL 

最後の行は、すべてのDataNucleusのログを見るためにINFOまたはALLにレベルのしきい値を割り当てます。 DataNucleusは一連のカテゴリを使用し、すべてのメッセージをこれらのカテゴリに記録します。詳細についてはSee hereをご覧ください。クエリ

  • log4j.category.DataNucleus.Datastoreに関連するすべてのメッセージ - - すべての一般的なデータストアのメッセージ
    または
  • log4j.category.DataNucleus.JDO - すべてのメッセージの一般的なJDO
  • log4j.category.DataNucleusすべてのルートであるあなたは、おそらく

    • log4j.category.DataNucleus.Queryが必要DataNucleusログカテゴリ。

      は、あなたのCLASSPATHにlog4jを追加します。私は依存関係の管理のためにGradle使用するので、ここで私のビルドスクリプトです:

      build.gradle

      configurations { 
          all*.exclude group: "commons-logging", module: "commons-logging" 
      } 
      
      dependencies { 
          // Logging 
          compile 'org.slf4j:slf4j-api:1.7.+' 
          runtime 'org.slf4j:slf4j-jdk14:1.7.+' 
          runtime ('log4j:log4j:1.2.17') { 
           exclude group: "com.sun.jdmk", module: "jmxtools" 
           exclude group: "com.sun.jmx", module: "jmxri" 
           exclude group: "javax.mail", module: "mail" 
           exclude group: "javax.jms", module: "jms" 
          }  
      } 
      

      アプリケーションが

      としてJVMパラメータを設定し、起動時にLog4Jの設定ファイルを提供するために、
      -Dlog4j.configuration=file:log4j.properties 
      

      あなたがのJavaEEアプリケーション・サーバー内で実行されている場合、これはあなたのために行うことができます。または、Spring WebMVCを使用している場合は、WEB-INFの中にlog4j.propertiesを置き、次のリスナーをデプロイメント記述子に追加します。

      web.xmlの

      <!-- The definition of the Log4j Configuration --> 
      <listener> 
          <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> 
      </listener> 
      <context-param> 
          <param-name>log4jConfigLocation</param-name> 
          <param-value>/WEB-INF/log4j.properties</param-value> 
      </context-param>