Log.INFO e Log.DEBUG [chiuso]


95

Sto sviluppando un vasto programma commerciale e continuo a confondermi tra il tipo di informazioni che voglio registrare con Log.INFO e Log.DEBUG. Esistono standard o regole pratiche su ciò che contiene ogni tipo di messaggio di registro?

Risposte:


132

Di solito provo a usarlo in questo modo:

  • DEBUG: informazioni interessanti per gli sviluppatori quando si tenta di eseguire il debug di un problema.
  • INFORMAZIONI: Informazioni interessanti per il personale di supporto che cerca di capire il contesto di un dato errore
  • WARN to FATAL: Problemi ed errori a seconda del livello di danno.

INFO può essere abilitato sempre in produzione, avrà un impatto sulle prestazioni?
pinkpanther

1
Dipende .. (Mi piace la risposta) I fattori che devi prendere in considerazione sono: 1. Quantità di righe di log delle informazioni 2. Configurazione del log (dove finiscono le tue linee di log?) 3. Elaborazione disponibile e alimentazione io sul sistemi interessati.
nfechner

1
E tieni presente che maggiore è il rumore, più difficile è individuare i problemi. Da plumberjack.blogspot.be/2010/09/… :> In comune con la filosofia Unix, il software non dovrebbe essere eccessivamente prolisso tranne quando è necessario o viene chiesto di esserlo. (perché non posso farlo citare?)
axd

38

Debug : istruzioni dettagliate sullo stato del programma, tipicamente utilizzate per il debug;

Info : dichiarazioni informative riguardanti lo stato del programma, che rappresentano eventi del programma o monitoraggio del comportamento;

Avvisa : dichiarazioni che descrivono eventi o stati potenzialmente dannosi nel programma;

Errore : istruzioni che descrivono errori non irreversibili nell'applicazione; questo livello è usato abbastanza spesso per registrare le eccezioni gestite;

Fatale : istruzioni che rappresentano le condizioni di errore più gravi, che si presume determinino la chiusura del programma.

Trovato su http://www.beefycode.com/post/Log4Net-Tutorial-pt-1-Getting-Started.aspx


Gli errori innescati dall'input dell'utente devono essere trattati come avvisi o errori? (IE
Nome

@Stevoisiak in base alla sua risposta immagino che dovrebbe essere trattata come un'informazione.
aderchox

9

Anche ricordare che tutti info(), error()e debug()le chiamate di registrazione forniscono la documentazione interna all'interno di qualsiasi applicazione.


Penso che sia un buon punto. Ad esempio, log.info("parse the widget text; ignore contents of 'foo'")serve come documentazione utile durante la lettura del codice, anche se è anche un'istruzione di log.
Stufato
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.