87 votes

Configuration de l’enregistrement de mise en veille prolongée en utilisant le fichier de configuration XML de Log4j ?

Je n'ai pas été en mesure de trouver toute la documentation sur la façon de configurer Hibernate de l'enregistrement en utilisant le style XML fichier de configuration de Log4j.

Est-ce possible ou dois-je utiliser une des propriétés de style de fichier de configuration pour le contrôle de Hibernate exploitation forestière?

Si quelqu'un a des informations ou des liens vers de la documentation, il serait apprécié.

EDIT:
Juste pour préciser, je suis à la recherche d'un exemple de la syntaxe XML de contrôle de la mise en veille prolongée.

EDIT2:
Voici ce que j'ai dans mon fichier de configuration XML.

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <appender name="console" class="org.apache.log4j.ConsoleAppender">
        <param name="Threshold" value="info"/>
        <param name="Target" value="System.out"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{ABSOLUTE} [%t] %-5p %c{1} - %m%n"/>
        </layout>
    </appender>
    <appender name="rolling-file" class="org.apache.log4j.RollingFileAppender">
        <param name="file" value="Program-Name.log"/>
        <param name="MaxFileSize" value="1000KB"/>
    <!-- Keep one backup file -->
        <param name="MaxBackupIndex" value="4"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] %-5p %l - %m%n"/>
        </layout>
    </appender>

    <root>
        <priority value ="debug" />
        <appender-ref ref="console" />
        <appender-ref ref="rolling-file" />
    </root>
</log4j:configuration>

La journalisation fonctionne très bien mais je suis à la recherche d'un moyen de descendre et de contrôle de la mise en veille prolongée la journalisation de façon à les séparer de ma demande de connexion au niveau de l', comme c'est le cas actuellement inondations mes journaux. J'ai trouvé des exemples de l'utilisation du fichier de préférences pour ce faire, je me demandais juste comment je peux faire cela dans un fichier XML.

159voto

Loki Points 7801

À partir de http://docs.jboss.org/hibernate/core/3.3/reference/en/html/session-configuration.html#configuration-logging

Voici la liste des enregistreur catégories:

Category                    Function

org.hibernate.SQL           Log all SQL DML statements as they are executed
org.hibernate.type          Log all JDBC parameters
org.hibernate.tool.hbm2ddl  Log all SQL DDL statements as they are executed
org.hibernate.pretty        Log the state of all entities (max 20 entities) associated with the session at flush time
org.hibernate.cache         Log all second-level cache activity
org.hibernate.transaction   Log transaction related activity
org.hibernate.jdbc          Log all JDBC resource acquisition
org.hibernate.hql.ast.AST   Log HQL and SQL ASTs during query parsing
org.hibernate.secure        Log all JAAS authorization requests
org.hibernate               Log everything (a lot of information, but very useful for troubleshooting) 

NB: la Plupart des enregistreurs utiliser le niveau de DÉBOGAGE, cependant org.mise en veille prolongée.type utilise TRACE. Dans les versions précédentes de Hibernate org.mise en veille prolongée.type également utilisé DEBUG, mais comme d'Hibernate 3, vous devez définir le niveau de TRACE (ou TOUS) afin de voir le JDBC liaison des paramètres de journalisation.

Et une catégorie est spécifié en tant que tel:

<logger name="org.hibernate">
    <level value="ALL" />
    <appender-ref ref="FILE"/>
</logger>

Il doit être placé à l'avant de l'élément racine.

25voto

Dennis S Points 417

Loki's réponse de points d'Hibernate 3 docs et fournit de bonnes informations, mais je n'étais toujours pas obtenir les résultats que j'attendais.

Bien raclée, en agitant des bras et des généraux morts souris fonctionne finalement atterri moi mon fromage.

Parce que Hibernate 3 est à l'aide de la Journalisation Simple Façade pour Java (SLF4J) (pour les docs), si vous êtes en s'appuyant sur Log4j 1.2, vous aurez également besoin de la slf4j-log4j12-1.5.10.jar si vous êtes désireux de entièrement configurer Hibernate enregistrement d'un fichier de configuration log4j. Espérons que cela aide le gars à côté.

7voto

James McMahon Points 14356

En réponse au commentaire de homaxto, c’est ce que j’ai en ce moment.

L’élément essentiel étant

J’espère que cela aide.

5voto

TMN Points 2464

Voici ce que j’utilise :

Évidemment, je n’aime pas voir les messages de mise en veille prolongée  ;) - Réglez le niveau sur « debug » pour obtenir le résultat.

3voto

dc360 Points 109

Les réponses ont été utiles. Après le changement, j’ai eu en double consignation des instructions SQL, un dans le fichier de log log4j et sur la console standard. J’ai changé le fichier persistence.xml pour dire show_sql sur false pour se débarrasser de l’exploitation de la console standard. Garder format_sql vrai affecte également le fichier de log log4j, donc j’ai gardé ce vrai.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X