Log.INFO vs Log.DEBUG [fermé]


96

Je développe un grand programme commercial et je n'arrête pas de me confondre entre le type d'informations que je veux enregistrer avec Log.INFO et Log.DEBUG. Existe-t-il des normes ou des règles empiriques sur le contenu de chaque type de message de journal?

Réponses:


132

J'essaye généralement de l'utiliser comme ceci:

  • DEBUG: Informations intéressantes pour les développeurs, lorsqu'ils tentent de déboguer un problème.
  • INFO: Informations intéressantes pour le personnel de support essayant de comprendre le contexte d'une erreur donnée
  • AVERTISSEMENT FATAL: Problèmes et erreurs selon le niveau de dommage.

INFO peut-il toujours être activé en production, cela aura-t-il un impact sur les performances?
pinkpanther

1
Cela dépend. (J'aime cette réponse) Les facteurs dont vous devez tenir compte sont: 1. Nombre de lignes de journal d'information 2. Configuration de la journalisation (où aboutissent vos lignes de journalisation?) 3. Traitement disponible et alimentation io sur le systèmes concernés.
nfechner

1
Et sachez que plus il y a de bruit, plus il est difficile de repérer les problèmes. De plumberjack.blogspot.be/2010/09/… :> En commun avec la philosophie Unix, les logiciels ne doivent pas être excessivement verbeux, sauf quand ils doivent l'être ou qu'on le leur demande. (Pourquoi ne puis-je pas obtenir cela?)
axd

38

Débogage : déclarations affinées concernant l'état du programme, généralement utilisées pour le débogage;

Info : déclarations d'information concernant l'état du programme, représentant les événements du programme ou le suivi du comportement;

Avertir : déclarations décrivant des événements ou des états potentiellement dangereux dans le programme;

Erreur : instructions qui décrivent des erreurs non fatales dans l'application; ce niveau est utilisé assez souvent pour la journalisation des exceptions traitées;

Fatal : instructions représentant les conditions d'erreur les plus graves, aboutissant supposément à l'arrêt du programme.

Trouvée sur http://www.beefycode.com/post/Log4Net-Tutorial-pt-1-Getting-Started.aspx


Les erreurs déclenchées par l'entrée utilisateur doivent-elles être traitées comme des avertissements ou des erreurs? (IE nom d'utilisateur ou mot de passe incorrect)
Stevoisiak

@Stevoisiak basé sur sa réponse, je suppose que cela devrait être traité comme une info.
aderchox

9

Rappelez - vous aussi que tous info(), error()et les debug()appels de journalisation fournissent des documents internes de toute application.


Je pense que c'est un bon point. Par exemple, log.info("parse the widget text; ignore contents of 'foo'")sert de documentation utile lors de la lecture du code, même s'il s'agit également d'une instruction de journal.
Ragoût
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.