Sono completamente d'accordo con ciò che hanno detto hhafez e nos. Stai andando nella giusta direzione con un pacchetto di registrazione invece di provare a far girare il tuo. È molto più pulito e più facile da correggere. La registrazione su un file di testo è molto più facile da gestire a lungo termine (dati i tipici set di abilità di progetto) rispetto alla registrazione di DB, anche se si sta pianificando un'analisi complessa dei dati segnalati, a volte è più semplice averlo già in un DB.
Se il debug è uno degli obiettivi dichiarati per l'implementazione di una soluzione di registrazione, è imperativo che standardizzate tutti i livelli di registro in anticipo e apportate quella parte del processo di revisione del codice. Avere abbastanza differenze in granularità in modo da poter aumentare gradualmente la profondità dei report passando al livello successivo. È molto frustrante cercare di risolvere un problema di PROD, non avere abbastanza informazioni di registro per vedere il problema, quindi passare al livello successivo di registrazione e sommergere completamente i registri con così tanto spargimento che non è possibile vedere la foresta per gli alberi (e i registri rotolano ogni 5 minuti a causa del volume). L'ho visto accadere.
Nella maggior parte dei casi di registrazione di file di testo, le prestazioni non dovrebbero essere un problema. È un po 'più complicato con la registrazione del DB. Fare un inserto è solo leggermente più intenso di accodamento a un file di testo, ma è il volume per unità di tempo che lo rende molto più brutto su scala.
Inoltre, se avete intenzione di fare qualsiasi analisi dei log non in linea, si dovrebbe scegliere un formato di file di registro che è facilmente estensibile e non richiederà enormi modifiche al codice di analisi, se avete bisogno di aggiungere qualcosa al registro. Stai lontano da strutture di messaggi annidate e multiparte. Analizzare quelli diventa un dolore.
Buona fortuna!
fonte
2010-04-13 02:34:38