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 :

Le logger Python [Tutoriel]


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Par défaut Le logger Python
    Bonjour à tous,

    Je vous propose une petite introduction au logger Python: http://deusyss.developpez.com/tutoriels/Python/Logger/

    Voir aussi les Cours et tutoriels pour apprendre la programmation Python


    N'hésiter pas à commenter

  2. #2
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 491
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 491
    Billets dans le blog
    1
    Par défaut
    Bonne initiative

    J'ai modifié le titre et j'ai rajouté la balise qui va bien. J'ai aussi déplacer dans le sous-forum "Contribuez". Je présume que ton article sera bientôt en actualité ?

    En lisant, je suis tombé sur une petite faute :
    Le résultat de cette structure est que nous pouvons gérer de manière très fine la redirection de chaque information logger.
    J'aurais écrit logguée.

    Je ne suis pas complètement convaincu par la séparation en fonction des niveaux dans différents fichiers :
    Le but est de compartimenter les messages afin d'en faciliter le traitement. Cette solution possède néanmoins un inconvénient de taille : si vous désirez mieux comprendre le déroulement des opérations ayant entraîné l'anomalie, vous êtes obligé de jouer avec plusieurs logs au lieu d'un seul.
    Tu le dis très justement : cela complique l'analyse du déroulement. A mon humble avis, il est plus efficace de faire un seul fichier de log complet. Ensuite, on écrit des scripts pour traiter ce log. Avec grep par exemple, il est très simple d'extraire les messages critiques dans leur propre fichier ou de filtrer les messages d'un niveau qui n'intéresse pas. Une idée plus intéressante dans une telle séparation est faire un fichier avec tous les logs et d'avoir un handler spécial pour les critiques mais plutôt que ce soit un FileHandler, ce serait un STMPHandler pour envoyer un mail à la personne qui est d'astreinte

    Par ailleurs, sans tester et juste en lisant, j'ai l'impression que ton code ne sépare pas exactement les logs par niveau : il fait un fichier pour les critiques et un fichiers pour tout sauf debug. Non ?

  3. #3
    Expert confirmé

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Par défaut
    Oui la demande est en cours.

    Effectivement, personellement, je prefere un seul fichier. Mais d'autres personnes prefere des logs séparés, donc c'était important de l'expliquer. Sinon pour les mails, c'est quelque chose que je ne désirais pas aborder dans cet article car je visais le tout public, et même si en Python ce n'est pas compliqué, ce n'est quand même pas à la portée du débutant.

    Sinon, si si, il y a bien un filtrage, avec creation de deux fichiers. Tout d'abord le logger filtre au niveau info, ensuite chaque filehandler filtre à son niveau, info et critique.

  4. #4
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 491
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 491
    Billets dans le blog
    1
    Par défaut
    Je comprends que tu ne souhaitais pas aborder dans ce cours le cas des envois de mails. Je raisonnais ici uniquement sur un plan "métier" et non un plan "contenu du cours".

    handler_info.setLevel(logging.INFO)
    Quand tu fais ça, le handler écrit dans le fichier tous les messages de niveaux INFO et plus ou juste ceux de niveau INFO ?

  5. #5
    Expert confirmé

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

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

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Par défaut
    @Bktero
    Sur un plan metier effectivement, je te rejoint à 3000%. Passer un certains seuil, il faut un envoi automatique de mail afin de pouvoir intervenir au plus vite et limiter les degats, surtout si les chaines tournent de nuit ou le week end.

    Du côté de ta question, j'en voit un qui a pas bien lu a fond le tuto .

    La reponse est dans le II-B: "Comme nous pouvons le constater, lorsqu'on définit un niveau, correspondant en réalité à un seuil de sensibilité, nous loggons ce niveau ainsi que tous les niveaux supérieurs de criticité". Dans les faits, mais je ne suis jamais monté à ce niveau par manque de besoin, je pense qu'il est possible de définir un niveau bas (ce qu'on fait dans le tuto) et un niveau haut, car tel qu'est tourné la documentation officielle on a l'impression qu'il est sous entendu qu'on peut définir un seuil maximal. Peu etre pour un futur article

  6. #6
    Membre éprouvé Avatar de marsupial
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2014
    Messages
    1 816
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Mars 2014
    Messages : 1 816
    Par défaut
    Ma formulation sera éventuellement incorrecte et incompréhensible car approximative.

    Est-il possible de descendre à un niveau bas dans le language, non pas pour journaliser mais pour répliquer/neutraliser avec l'envoi de courriels ?

    Bravo pour le tutoriel surtout.

Discussions similaires

  1. CORBA & PYTHON
    Par stan91stan dans le forum CORBA
    Réponses: 5
    Dernier message: 10/06/2004, 12h32
  2. [interbase]Se logger après une première installation
    Par Ultra-FX dans le forum InterBase
    Réponses: 3
    Dernier message: 13/09/2002, 11h44

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