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

Python Discussion :

utilisation de logging [Python 3.X]


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 34
    Points : 15
    Points
    15
    Par défaut utilisation de logging
    Bonjour

    Je cherche à utiliser la librairie logging, mais je rencontre un problème par rapport aux tutos que je trouve un peu partout.
    L'instruction basicConfig semble ne pas avoir d'impact sur la gestion des logs. Ainsi, avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    logging.debug("test debug")
    logging.info("test info")
    logging.warning("test warning")
    logging.error("test error")
    logging.critical("test critical")
    j'obtiens toujours le résultat suivant dans la console :
    WARNING:root:test warning
    ERROR:root:test error
    CRITICAL:root:test critical
    malgré l'ajout des différentes configs suivantes (placées avant le code bien sûr) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    FORMAT = '%(asctime)s %(clientip)-15s %(user)-8s %(message)s'
    logging.basicConfig(
        format=FORMAT,
        level=logging.DEBUG,
        filename="log.txt",
    )
    # ou
    logging.basicConfig(level=logging.DEBUG)
    # ou
    logging.basicConfig(filename="test.log")
    Avec seulement un seul paramétrage ne fonctionnant pas, je pourrais penser que je fais une erreur mais vu que rien ne change je ne comprend pas trop d'où peut venir le problème.

    Voilà, donc si quelqu'un a une idée de pourquoi ça marche pas, je vous remercie d'avance.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Cet exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    import logging
    logging.basicConfig(level=logging.DEBUG)
     
    logging.debug("test debug")
    logging.info("test info")
    logging.warning("test warning")
    logging.error("test error")
    logging.critical("test critical")
    fonctionne très bien chez moi.
    Et notez que vous pouvez recopier le code pour l'exécuter avec l'interpréteur interactif ou dans un fichier pour l'exécuter en tant que script.

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

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 34
    Points : 15
    Points
    15
    Par défaut
    J'ai essayé à nouveau en copiant-collant ce code mais ça ne marche toujours pas correctement.

    Je sais toujours pas d'où peut venir le problème...

  4. #4
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 954
    Points : 9 284
    Points
    9 284
    Par défaut
    Hello,
    avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    import logging
    FORMAT = '%(asctime)s -> %(user)-2s :  %(message)s'
    d= { 'user': 'who'}
    logging.basicConfig(
        format=FORMAT,
        level=logging.DEBUG,
        filename="log.txt"
    )
    logging.debug("test debug",extra=d)
    logging.info("test info",extra=d)
    logging.warning("test warning",extra=d)
    logging.error("test error",extra=d)
    logging.critical("test critical",extra=d)
    j'obtiens ceci dans le fichier log.txt :
    2022-05-21 14:09:09,105 -> who : test debug
    2022-05-21 14:09:09,105 -> who : test info
    2022-05-21 14:09:09,105 -> who : test warning
    2022-05-21 14:09:09,105 -> who : test error
    2022-05-21 14:09:09,105 -> who : test critical
    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par thomas18F Voir le message
    J'ai essayé à nouveau en copiant-collant ce code mais ça ne marche toujours pas correctement.
    Quelle version de Python utilisez vous? Sur quel environnement système? Comment est lancé le script?

    Tout cela étant supposé fonctionner tel que documenté, vous devez vous appliquer à fournir de quoi reproduire.

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

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 34
    Points : 15
    Points
    15
    Par défaut
    J'ai essayé avec ton code Jurassik Pork, mais j'obtiens un résultat différent :
    WARNING:root:test warning
    ERROR:root:test error
    Sinon pour ma configuration, j'utilise python 3.9 dans l'IDE spyder 5.0 (hors anaconda) sous Windows.
    Désolé de pas l'avoir précisé plus tôt Wiztrick ><

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    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 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par thomas18F Voir le message
    Sinon pour ma configuration, j'utilise python 3.9 dans l'IDE spyder 5.0 (hors anaconda).
    Essayez hors IDE => vous créez un terminal et vous lancez le script "normalement" via la commande python monscript.py ou python est à remplacer par la commande qui lance l'interpréteur Python.

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

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2019
    Messages : 34
    Points : 15
    Points
    15
    Par défaut
    Alors c'est toujours un truc auquel je pense pas mais du coup ça marche bien comme il faut hors IDE.

    J'ai testé avec et sans l'écriture dans un fichier.

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

Discussions similaires

  1. [MySQL-5.5] Restaurer une base en utilisant les logs binaires
    Par Menadel dans le forum Administration
    Réponses: 2
    Dernier message: 20/08/2013, 19h13
  2. JGit et utilisation du log et du pull
    Par SuperMicke34 dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 25/06/2013, 15h06
  3. Utilisation "Error log view"
    Par bleporini dans le forum Eclipse Platform
    Réponses: 3
    Dernier message: 04/12/2009, 15h30
  4. utilisation fonction log avec décimaux
    Par louiz31 dans le forum Calcul scientifique
    Réponses: 7
    Dernier message: 02/07/2009, 12h04
  5. [java.util.logging]Bonne utilisation de logging?
    Par Torg666 dans le forum Logging
    Réponses: 2
    Dernier message: 01/07/2009, 15h43

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