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

EDI/RAD Python Discussion :

Afficher les log dans la console Eclipse


Sujet :

EDI/RAD Python

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut Afficher les log dans la console Eclipse
    Bonjour à tous,

    J'ai installé le plugin PyDev pour Eclipse. Dans mes programmes je créais des fichiers de log mais j'aimerais également afficher mes log dans la console d'Eclipse. Comment puis-je faire ? je vous remercie de votre aide.

    Cordialement,

    Leniouns

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Dans mes programmes je créais des fichiers de log mais j'aimerais également afficher mes log
    Utilisez vous le module logging?
    Les messages expédiés au logging handler "console" apparaissent bien sur la "console" d'Eclispe.
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Oui j'utilise le module logging. Qu'entendez vous par le handler "console" ?

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Citation Envoyé par Leniouns Voir le message
    Oui j'utilise le module logging. Qu'entendez vous par le handler "console" ?
    Dans la terminologie du module logging, les Handlers "are responsible for dispatching the appropriate log messages (based on the log messages’ severity) to the handler’s specified destination"
    Le Handler "console" est construit avec un StreamHandler qui par défaut expédie ses message sur sys.stderr.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Car moi en fait j'ai mon code comme ceci :

    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
    import util.currentdate as currentdate
    import logging
    import datetime
    import download.cal as cal
    import download.sttm as sttm
    import download.nas as nas
    import filecmp
     
     
    if __name__ == '__main__':
     
        print("Début du programme !")
     
        date = currentdate.CurrentDate()
     
        # Initialisation du fichier de log
        logging.basicConfig(
            level=logging.DEBUG,
            format='%(asctime)s : %(levelname)s : %(message)s',
            filename = "log_" + str(datetime.date.today()),
            filemode = 'w',
        )
     
        logging.info("DEBUT DU PROGRAMME")
        logging.info("------------------")

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Votre configuration affiche les logs dans un fichier pas sur la "console" et à fortiori pas sur la "console" Eclipse.
    Réduisez les paramètres d'appels à basicConfig au seul level=logging.DEBUG, devrait afficher les messages sur les "consoles".
    Si vous voulez que les messages soient affichés sur la console _et_ enregistrés dans le fichier, il faut créer un XXXHandler supplémentaire.
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Voilà c'est mon souhait d'afficher les log dans la console et dans un fichier. Comment dois-je créer ce handler ?

  8. #8
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Citation Envoyé par Leniouns Voir le message
    Voilà c'est mon souhait d'afficher les log dans la console et dans un fichier. Comment dois-je créer ce handler ?
    Mon propos est que vous soyez plus "confortable" avec Python, non d'écrire le code à votre place.
    Allez donc voir dans la documentation du module logging le chapitre cookbook et montrez nous ce que vous faites ou ralez si vous ne comprenez pas.

    Bon courage
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Voilà mon code :
    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
     
     # Initialisation du fichier de log
        logging.basicConfig(
            level=logging.DEBUG,
            format='%(asctime)s : %(levelname)s : %(message)s',
            filename = "log_" + str(datetime.date.today()),
            filemode = 'w',
        )
     
        console = logging.StreamHandler()
        console.setLevel(logging.INFO)
        formatter = logging.Formatter('%(name)-12s: %(levelname)-8s %(message)s')
        # tell the handler to use this format
        console.setFormatter(formatter)
        # add the handler to the root logger
        logging.getLogger('').addHandler(console)
    Là ça marche ça écrit les log dans le fichier et sur la console. Par contre sur la console ça écrit en rouge

  10. #10
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Bravo.

    Citation Envoyé par Leniouns Voir le message
    Là ça marche ça écrit les log dans le fichier et sur la console. Par contre sur la console ça écrit en rouge
    C'est ainsi qu'Eclipse marque les sorties sur stderr pour les différentier de celles écrites sur stdout => Ca devrait être paramétrable quelque part côté Eclipse.

    Le gros inconvénient est de perd "l'ordre" i.e. la séquence des messages affiché par Eclipse ne sera pas la même que lors de l'exécution sur une "console" de type tty/terminal.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    434
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2010
    Messages : 434
    Points : 94
    Points
    94
    Par défaut
    Ok merci de ton aide. Résolu

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

Discussions similaires

  1. Ne pas afficher les log sur la console
    Par proDZ dans le forum Logging
    Réponses: 3
    Dernier message: 06/02/2010, 17h30
  2. Réponses: 2
    Dernier message: 10/11/2008, 09h05
  3. Afficher les accent dans une console
    Par arnaud036 dans le forum C
    Réponses: 11
    Dernier message: 18/01/2008, 12h43
  4. comment afficher les exceptions dans console eclipse 3.3
    Par booba12 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 06/12/2007, 14h14
  5. Afficher les erreurs de Struts dans la console Eclipse
    Par lazit dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 28/06/2007, 15h31

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