IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Logging Java Discussion :

[LOG4J] différentes category avec différents appenders mais logs écris n'importe où


Sujet :

Logging Java

  1. #1
    Membre expérimenté

    Homme Profil pro
    Senior Développeur JEE
    Inscrit en
    Avril 2002
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Senior Développeur JEE
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2002
    Messages : 795
    Points : 1 660
    Points
    1 660
    Par défaut [LOG4J] différentes category avec différents appenders mais logs écris n'importe où
    Bonjour à tous,

    Je souhaiterais pour chaque API, pouvoir logguer les informations dans des fichiers différents, mais le problème est que le résultat est tout sauf attendu.
    Tout est mélangé dans chaque fichier.

    Je suis quasiment sur que je fais une boulette quelque part mais je vois pas où

    Si vous aviez une petite idée elle serait la bienvenue.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    <?xml version="1.0" encoding="UTF-8"?>
     
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
     
    <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" threshold="all" debug="false">
     
        <!-- Main Appender-->
        <appender name="MAIN" class="org.apache.log4j.AsyncAppender">
            <param name="Threshold" value="INFO"/>
            <appender-ref ref="ITRACKER_FILE"/>
            <appender-ref ref="HIBERNATE_FILE"/>
            <appender-ref ref="SPRING_FILE"/>
            <appender-ref ref="CONSOLE"/>        
        </appender>
     
        <!-- Console Appender-->
        <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} %-5p [%c{1}] %m%n"/>
            </layout>
        </appender>
     
        <!--Itracker File Appender-->
        <appender name="ITRACKER_FILE" class="org.apache.log4j.RollingFileAppender">
            <param name="Threshold" value="DEBUG"/>
            <param name="File" value="C:\\itracker.log"/>
            <param name="Append" value="true"/>
            <param name="MaxFileSize" value="10MB"/>
            <param name="MaxBackupIndex" value="1"/>
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
            </layout>
        </appender>
     
        <!--Hibernate File Appender-->
        <appender name="HIBERNATE_FILE" class="org.apache.log4j.RollingFileAppender">
            <param name="Threshold" value="INFO"/>
            <param name="File" value="C:\\hibernate.log"/>
            <param name="Append" value="true"/>
            <param name="MaxFileSize" value="10MB"/>
            <param name="MaxBackupIndex" value="1"/>
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
            </layout>
        </appender>
     
        <!--Spring File Appender-->
        <appender name="SPRING_FILE" class="org.apache.log4j.RollingFileAppender">
            <param name="Threshold" value="INFO"/>
            <param name="File" value="C:\\spring.log"/>
            <param name="Append" value="true"/>
            <param name="MaxFileSize" value="10MB"/>
            <param name="MaxBackupIndex" value="1"/>
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
            </layout>
        </appender>
     
        <!--Apache File Appender-->
        <appender name="APACHE_FILE" class="org.apache.log4j.RollingFileAppender">
            <param name="Threshold" value="INFO"/>
            <param name="File" value="C:\\apache.log"/>
            <param name="Append" value="true"/>
            <param name="MaxFileSize" value="10MB"/>
            <param name="MaxBackupIndex" value="1"/>
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
            </layout>
        </appender>
     
        <category name="org.apache">
            <priority value="INFO"/>
            <appender-ref ref="APACHE_FILE"/>
        </category>
     
        <category name="org.springframework">
            <priority value="INFO"/>
            <appender-ref ref="SPRING_FILE"/>
        </category>
     
        <category name="org.hibernate">
            <priority value="INFO"/>
            <appender-ref ref="HIBERNATE_FILE"/>
        </category>
     
        <category name="org.itracker">
            <priority value="DEBUG"/>
            <appender-ref ref="ITRACKER_FILE"/>
            <appender-ref ref="CONSOLE"/>
        </category>
     
     
        <root>
            <priority value="INFO"/>
            <appender-ref ref="MAIN"/>
        </root>
     
    </log4j:configuration>
    D'avance merci pour vos réponses.

  2. #2
    Membre actif
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mars 2002
    Messages
    192
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mars 2002
    Messages : 192
    Points : 252
    Points
    252
    Par défaut
    Salut, en fait je pense que ce qu'il se passe est très cohérent dans la mesure ou tu déclares un main Appender qui contient des références sur les autres et que tu actives ce Main appender pour toutes tes classes au lvl info.

    En gros, tu spécifies un appender particulier pour chacune de tes APIs et tu définis un appender général (qui va écrire dans chacun des appenders particuliers) que tu actives pour toutes tes classes.

    En conclusion, je pense qu'il faut que tu enlèves les références aux autres appenders dans l'appender MAIN, au pire laisse juste CONSOLE ou alors active CONSOLE dans le ROOT à la place de MAIN.

    hope this helps...

    Matthieu

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/02/2012, 17h17
  2. [Modèle Relationnel] Tables avec même champs mais containtes d'intégrités différents
    Par West01 dans le forum Schéma
    Réponses: 1
    Dernier message: 19/07/2008, 12h06
  3. Différents classes avec différents attributs
    Par toutminnie dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 22/08/2007, 08h52
  4. Réponses: 3
    Dernier message: 13/12/2006, 18h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo