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

Langage Java Discussion :

logger les RuntimeException


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Par défaut logger les RuntimeException
    Salut,

    Je suis en train de finir les logs pour mon applic et jme demandais comment je pourrais bien logger les stacktrace des runtimeExceptions, et autres exceptions que j'aurais oublié d'encapsuler dans un try catch (je sais c'est mal, mais ça arrive ). Tout ca bien entendu sans rajouter des throw a toutes mes méthodes ...

    J'avais pensé a récupérer une partie de la sortie sur la console. Mais je ne sais ni si c'est une bonne idée, ni c'est c'est faisable.

    Une idée ?

  2. #2
    Membre éclairé
    Inscrit en
    Juillet 2004
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 218
    Par défaut
    salut,

    juste pour infos, un outil pas mal fait qui permet de logger toutes les exceptions est Log4J, je pense qu'il peux aider pas mal

    stujava

  3. #3
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    De toute façon... si ton programme génère une exception que tu n'interceptes à aucun moment par un try/catch, tu devrais t'en apercevoir assez rapidement
    Ton programme risque fort de s'arrêter brutalement (tout du moins le Thread ayant levé cette exception non rattrapée si ton programme est multi-threads)
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  4. #4
    Membre expérimenté Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Par défaut
    Citation Envoyé par stujava
    salut,

    juste pour infos, un outil pas mal fait qui permet de logger toutes les exceptions est Log4J, je pense qu'il peux aider pas mal

    stujava
    Ok je vais y jeter un oeil.

    Citation Envoyé par CyberChouan
    De toute façon... si ton programme génère une exception que tu n'interceptes à aucun moment par un try/catch, tu devrais t'en apercevoir assez rapidement
    Ton programme risque fort de s'arrêter brutalement (tout du moins le Thread ayant levé cette exception non rattrapée si ton programme est multi-threads)
    Oui mais le programme, ce n'est pas moi qui vais l'utiliser. C'est a ca que les logs vont servir. Le client m'envoit les logs afin que je puisse cibler l'endroit ou l'exception a été lancée.

  5. #5
    Membre expérimenté Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Par défaut
    Ca va, j'ai réussi à récupérer les Exceptions non catchées et à les rediriger dans mon fichier de log.

    Si ca intéresse qqun.

    D'abord j'ai redéfini un PrintStream
    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
     
    import java.io.OutputStream;
    import java.io.PrintStream;
     
    public class LogPrintStream extends PrintStream 
    {
        public LogPrintStream(OutputStream out) {
    	super(out);
        }
     
        public void println(String string) 
        {
            MyLog.unCatchedExceptionFound(string + "\n");
        }
     
        public void print(String string) {
            MyLog.unCatchedExceptionFound(string);
        }
    }
    Puis j'ai redirigé System.err vers mon PrintStream
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    LogPrintStream lps = new LogPrintStream(System.err);
    System.setErr(lps);

  6. #6
    Membre averti
    aze
    Inscrit en
    Mars 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : Antilles Néerlandaises

    Informations professionnelles :
    Activité : aze

    Informations forums :
    Inscription : Mars 2007
    Messages : 55
    Par défaut
    Tiens ça m'intéresse !!
    Merci !

    Par ailleurs si je catch à la fin une exception de type "Exception", normallement elles devraient toutes être interceptées, non ?

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

Discussions similaires

  1. logger les accès à Tomcat
    Par julien-blaise dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 17/01/2007, 15h04
  2. Réponses: 2
    Dernier message: 23/11/2006, 09h20
  3. Logger les requetes mysql ?
    Par Drisss dans le forum Requêtes
    Réponses: 4
    Dernier message: 21/11/2006, 21h02
  4. Réponses: 3
    Dernier message: 11/10/2006, 11h54
  5. [iBatis] Logger les requètes SQL
    Par bslota dans le forum Persistance des données
    Réponses: 2
    Dernier message: 25/11/2005, 14h29

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