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

avec Java Discussion :

personaliser les sorties du Logger


Sujet :

avec Java

  1. #1
    Membre actif Avatar de jamesleouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 522
    Points : 243
    Points
    243
    Par défaut personaliser les sorties du Logger
    Bonjour,

    J'ai une appli dans laquelle j'essaie de mettre des logs sortant sur la console ainsi que dans un fichier....
    Le problème c'est que comme pour beaucoup de log on ne comprend rien, et il y a plein d'informations complétement inutiles.
    Y a til un moyen de définir un certain pattern de sortie?

    Merci à tous!

  2. #2
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    bonjour,

    Avec si peux d'information il est difficile de donner une réponse.
    quel API de log tu utilises ?
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre actif Avatar de jamesleouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 522
    Points : 243
    Points
    243
    Par défaut
    bah Logger...
    Je l'ai mis dans le sujet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Logger logger=Logger.getLogger("DvdGeneration");
    Handler fh = new FileHandler("LogDvdGen.log",10000, 5,true);
    fh.setFormatter(new SimpleFormatter());
    logger.addHandler(fh);

  4. #4
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    cela semble évident pour toi, mais sache qu'il n'existe pas qu'une api de log, d'ou ma question pour savoir laquelle tu utilises.

    Tu utilise donc celle du jdk !

    En fait que veux tu faire exactement ?
    Filtrer les logs ou enlever des informations comme la date par exemple ou formater les message différemment ?

    Si tu veux filtrer il existe des outils de lecture des logs comme LogMX, il te permet de filter les messages, d'afficher que certaines infos, ...
    Pour ce qui est de supprimer des infos, en ajouter, ou formater les message différemment, il faut créer ton propre formateur, j'ai déjà répondu a cette question dans un autre post !
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre actif Avatar de jamesleouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 522
    Points : 243
    Points
    243
    Par défaut
    je voudrais essayer de tout mettre sur une ligne déjà... ou changer l'ordre dans lequel apparaissent les infos... changer la couleur pour le level INFO

    Désolé pour l'api de log ^_^

  6. #6
    Membre actif Avatar de jamesleouf
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    522
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 522
    Points : 243
    Points
    243
    Par défaut
    Un autre souci, c'est que je n'arrive pas a afficher des messages avec le level "FINE" (et d'autres)
    Pourtant je fais bien un setLevel....
    C'est embètant

    Les messages sont bien écrits dans mon fichier de log, mais n'apparaissent pas dans ma console sur Eclipse....

    Merci bien! bonne journée

  7. #7
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Points : 2 061
    Points
    2 061
    Par défaut
    Citation Envoyé par jamesleouf Voir le message
    je voudrais essayer de tout mettre sur une ligne déjà... ou changer l'ordre dans lequel apparaissent les infos...
    Je ne pense pas que ce soit réalisable directement car lorsque tu log une info, ca envoie directement ce que tu log dans un stream car les Handler hérite de StreamHandler, et visiblement il n'y a pas de bufferisation de ce que tu log.

    Si tu veux faire quelque chose il faut probablement que tu écrives ton propre handler qui héritera de la classe abstraite Handler.

    Citation Envoyé par jamesleouf Voir le message
    changer la couleur pour le level INFO
    Impossible la couleur est défini par ton éditeur, c'est juste de l'affichage.
    Si tu lance ton programme dans une console, tout sera en blanc !
    Si tu utilises LogMX que j'ai cité plus haut tu peux afficher les logs avec une couleur différent pour chaque type de log.

    Citation Envoyé par jamesleouf Voir le message
    Un autre souci, c'est que je n'arrive pas a afficher des messages avec le level "FINE" (et d'autres)
    Pourtant je fais bien un setLevel....
    C'est embètant

    Les messages sont bien écrits dans mon fichier de log, mais n'apparaissent pas dans ma console sur Eclipse....

    Merci bien! bonne journée
    Et oui, c'est un mystère que je n'est pas encore élucidé !
    Visiblement, pour une raison qui m'échappe encore il faut faire le set sur les handler et sur le logger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Logger logger=Logger.getLogger("DvdGeneration");
     
    Handler fh = new FileHandler("LogDvdGen.log",10000, 5,true);
    fh.setFormatter(new SimpleFormatter());
    logger.addHandler(fh); 
    fh.setLevel(Level.FINE);
    logger.setLevel(Level.FINE);
    Mais je ne sais plus si c'est possible de le faire sur le handler du root (la console), si tu n'y arrive pas, je te conseille de désactiver l'appel au père et d'ajouter un ConsoleHandler que tu auras instancier.

    pour désactiver l'appel au père tu ajoute ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    logger.setUseParentHandlers(false);
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. logger les sorties d'expect
    Par Dra_Gun dans le forum Langage
    Réponses: 1
    Dernier message: 29/01/2013, 09h16
  2. [VB6]Executer un programme externe et récuperer les sorties
    Par agro dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 29/03/2006, 13h08
  3. C++, intercepter les sorties avec les raw sockets
    Par ThibG dans le forum Développement
    Réponses: 6
    Dernier message: 08/08/2005, 10h44
  4. Synchroniser les sorties DirectSound
    Par inertia dans le forum DirectX
    Réponses: 1
    Dernier message: 24/06/2005, 16h36
  5. personaliser Les boites de dialogue !!
    Par leo13 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 19/01/2005, 18h36

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