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 :

[java.util.logging] plusieurs logs par API dans une même JVM


Sujet :

Logging Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2003
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2003
    Messages : 57
    Par défaut [java.util.logging] plusieurs logs par API dans une même JVM
    Salut à tous,

    Une question se pose à moi : je bosse sur une grosse application utilisant plusieurs API (internes ou externes). Certaines de ces APIs (en l'occurence les miennes) utilisent le Logger de java (java.util.logging.Logger).
    Ma question est la suivante : est-il possible de configurer via le fichier logging.properties un Handler par API ?... Car aujourd'hui tout est craché dans un seul fichier et du coup la lecture n'est pas comment dire ?... lisible !... (10 Mo en 10 secondes).

    NB : le fait de tuner le niveau de log par API ne me convient pas de ce cas précis (je précise au cas où).

    Merci !

  2. #2
    Membre Expert
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Par défaut
    est ce que ça t'embeterait de mettre ta config des handlers dans une classe plutot que dans config.properties?
    dans ce cas c'est plus simple d'avoir des handlers spécifiques accrochés à quelques endroits critiques dans l'arbre des packages.
    donc un FileHandler avec certaines caractéristiques pour "com.trucmuche" et un autre pour "org.shadoks" .... + tu ne transmets plus au parent
    par ailleurs la quantité de log m'inquiète un peu ... tu as de bonnes raisons pour ça?

  3. #3
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2003
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2003
    Messages : 57
    Par défaut
    Je voulais éviter cette solution (codée) et essayer de passer par le fichier de conf, mais visiblement je ne vais pas avoir le choix...

    Pour la taille des logs, c'est "normal" car il s'agit de toutes les traces (Level.ALL) et l'API source est un service appelé par une palanquée d'API's : ce qui génère ces logs.

    Et vous comprendrez mon soucis, tout est dans un seul fichier donc pas très facilement exploitable pour trouver le pourquoi du comment d'un soucis...

    Si d'autres solutions sont envisageables, je suis preneur !...

  4. #4
    Membre Expert
    Avatar de professeur shadoko
    Homme Profil pro
    retraité nostalgique Java SE
    Inscrit en
    Juillet 2006
    Messages
    1 257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : retraité nostalgique Java SE

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 257
    Par défaut
    Citation Envoyé par Pignoufy
    Je voulais éviter cette solution (codée) et essayer de passer par le fichier de conf, mais visiblement je ne vais pas avoir le choix...
    non .. c'est pas beaucoup plus compliqué qu'un fichier de conf, d'accord il faut compiler et le mettre accessible du class-path. tu mets le nom de la classe dans "java.util.logging.config.class" et hop!
    très souvent les configs par codes sont plus souples que les configs statiques par fichier.
    autre solution: tu laisses tout dans le même fichier, mais tes logs ont une chaîne d'accompagnement très reconnaissable ... un ti coup de grep et c'est bon!

    edit: Oups c'est vrai que je suis un vieil UNIXiaque blanchi sous le harnois "grep" est un utilitaire unix .... pardon!

  5. #5
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2003
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2003
    Messages : 57
    Par défaut
    Je sais que ce n'est pas compliqué mais c'est le côté "en dur" qui me gêne...
    Mais effectivement, j'avais déjà proposé la solution du grep (je bosse sous Linux) à mon chef... l'a pas vraiment aimé...

    Merci quand même

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

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

    Informations forums :
    Inscription : Mars 2002
    Messages : 192
    Par défaut
    Salut,

    si tu veux te baser sur le fichier de conf à mon avis le mieux est que tu écrives ton propre handler.
    Le principe de ce Handler serait d'être configuré par des tags que tu rajoutes dans le fichier de conf pour définir des fichiers différents par packages (par exemple). Dans la méthode publish du Handler tu ferais l'aiguillage vers tel ou tel fichier préalablement configuré.

    Tu peux aller voir sur mon blog un exemple d'extension de l'API java.util.logging. Tu pourras trouver un exemple de Handler et regarder comment je parse le fichier de conf pour le Formatter que j'avais écrit.

    J'espère que ça t'aidera.

    Tiens nous au courrant de tes avancées, ça peut être un Handler intérressant.

    Matthieu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher un même JPanel dans plusieurs onglets de JTabbedPane (dans une même JFrame)
    Par laurent.fructus dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 17/03/2014, 08h06
  2. Réponses: 22
    Dernier message: 22/05/2013, 17h52
  3. Réponses: 4
    Dernier message: 31/08/2010, 17h45
  4. [MySQL] Plusieurs enregistrements à la fois dans une même table
    Par cysedbs dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/12/2008, 10h37
  5. Plusieurs style de liens dans une même page
    Par keishah dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 23/08/2006, 14h22

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