Cosa devo fare con i log degli errori di produzione?

5

Abbiamo un sito intranet di PHP che eseguiamo con avviso / registrazione degli errori (in quanto non è sotto carico pesante e c'è un numero di bug / codice errato rimasto da trovare). Poiché il sito è relativamente instabile e in fase di sviluppo attivo, ho cancellato i log degli errori di produzione ogni volta che viene rilasciata ogni nuova versione, in modo da avere una visione chiara dei problemi riscontrati. Noi di solito non rilasciamo fino a quando non verranno risolti tutti i problemi registrati identificati nell'ultima build di produzione.

Conservo ancora i log degli errori di Apache perché il nostro codice non dovrebbe rovinare Apache (e se lo fa è un grosso problema), quindi se qualcosa non va li voglio sapere.

Mi sto chiedendo cos'è una buona pratica qui; il nostro codice precedente ha registrato istericamente in modo verbale, quindi ho cercato di limitare i log in modo che siano effettivamente informazioni utilizzabili, ma solo la cancellazione dei registri sembra sospetta.

Per riferimento, la maggior parte dei log sono variabili non definite perché a un programmatore passato è piaciuto usare if (!$var) anziché if (empty($var)) . Sono stato ansioso di rimuovere le quelle perché l'applicazione non ha eseguito azioni inaspettate, ma avrei ricevuto dozzine dello stesso avviso ogni giorno fino a quando non l'avessimo risolto. Questo è anche il motivo per cui ho lasciato l'avviso di registrazione in produzione.

Devo conservare tutti i miei log degli errori per riferimento futuro? Devo separare i vecchi log in qualche modo e taggarli per creare numeri?

    
posta Ben Brocka 29.02.2012 - 15:28
fonte

3 risposte

6

Se li stai utilizzando per eliminare i bug che vengono segnalati, stanno facendo il loro lavoro.

Sono utili ORA nell'identificazione dei bug correnti, ma se sono tutti corretti, non sono sicuro che ci sia molto valore nel mantenere i vecchi log una volta risolti i problemi da loro.

    
risposta data 29.02.2012 - 15:40
fonte
2

Li salverei e li incollerei in un file zip o in un altro archivio. L'archiviazione dovrebbe comprimerli, quindi non prenderanno un registro di spazio e saranno comunque facilmente accessibili se si desidera / ha bisogno di rivederli. Assegna un nome ai file dopo l'ID di rilascio / distribuzione in modo che sia facile correlarli con la versione del software che li ha prodotti.

    
risposta data 29.02.2012 - 15:57
fonte
2

I registri sono un'utile fonte di informazioni. Sebbene siano molto prolissi, sono davvero utili per la ricerca e l'azzeramento di un problema. Il mio suggerimento sarebbe

  1. Utilizza un sistema di tracciamento dei bug per tenere traccia degli errori frequenti. Trac è un buon modo per iniziare. Anche se i log degli errori sono grandi, sarebbero causati solo da alcuni bug. Un sistema di tracciamento dei bug ti aiuterà a tenere traccia degli errori in modo compatto.
  2. Archivia i log degli errori in un altro database. SQLite è una buona scelta. Se i log degli errori sono estremamente grandi, preferisco un database con valori-chiave come Redis o un database gerarchico come HDF5 . Puoi sempre utilizzare le query per estrarre i dati
  3. Tieni traccia dei bug con il rapporto del registro degli errori per un controllo migliore. Supponendo che un errore di pagina non trovata sia stato colpito 100 volte e che il bug sia la pagina errata, si ha il verificarsi di Bug1 100 volte. Ciò lo renderebbe accessibile a tutti in modo che gli errori possano essere rapidamente risolti. Anche se è un po 'difficile, è una soluzione migliore a lungo termine.
risposta data 29.02.2012 - 16:01
fonte

Leggi altre domande sui tag