2009-11-02 16 views
24

Sto cercando un framework di registrazione e sembra che log4net sia o fosse molto popolare. L'ultima versione è stata oltre 2 anni fa. Non è stato aggiornato per .net 3.0 o 3.5 o anche per Visual Studio 2008. C'è qualcosa di più recente (altro che entlib) che dovrei considerare?È log4net morto?

+13

fa qualcosa come una registrazione la biblioteca ha bisogno di un costante aggiornamento? L'ho usato e funziona abbastanza bene. – Min

+5

EntLib è * NON * qualcosa che dovresti considerare. Usa log4net –

+0

Qual è il tuo ragionamento per "non" usare EntLib? Il codice delle migliori pratiche di EntLib non è? – Chris

risposta

12

Log4j (che era la base per log4net) non è stato aggiornato negli anni. Ci sono altre alternative dallo stesso autore (slf4j e logback) e altre, ma log4j è ancora usato in abbondanza e in abbondanza. Non è morto, è arrivato al punto in cui non c'era più niente di veramente necessario per questo. Nulla che giustificasse il lavoro o non romperebbe la compatibilita '. Quando ciò accade a un progetto commerciale, la società deve inventare un altro scopo per il prodotto o fare qualcos'altro e il prodotto effettivamente muore. Nell'open source, non proprio.

Come punto di paragone, JUnit praticamente non andava da nessuna parte da anni. Quindi Java ha ottenuto annotazioni, JUnit ha ottenuto la competizione (TestNG) e si sta improvvisamente muovendo di nuovo. Ora gli sviluppatori originali potrebbero non finire in giro in ogni caso, ma il progetto sarebbe biforcato o adattato. Ad esempio, TestNG ha consentito un percorso di migrazione fluido da JUnit.

Quindi la linea di fondo è se è popolare e utilizzata, non morirà su di voi.

11

log4net è una porta di qualcosa originariamente scritto in java. La porta è più o meno completa.

Inoltre, la porta ha riguardato il runtime .Net 2.0 e .Net 3.0 e .Net 3.5 sono anche costruiti su quello stesso runtime. Pertanto è possibile caricare log4net in Visual Studio 2008 e utilizzarlo in un progetto .Net 3.5, se lo si desidera. Quindi, a quanto ho capito, non è necessario fare una nuova versione specifica per .Net 3.5 o Visual Studio 2008 al momento. Ovviamente Visual Studio 2010 potrebbe cambiarlo (nuovo runtime).

+1

Joel sono d'accordo con te in teoria. Stabile e ha le caratteristiche ma nella stagnazione del software = morte. Non voglio investire il tempo se questo è il caso. – Chip

+0

Bene, vs2010 beta 2 è ora disponibile e include una licenza go-live.Quindi potrebbe valere la pena verificare se ci sia un movimento verso una versione _eventual_ per .Net 4. –

+3

Non penso che sia morto dato che siamo abbastanza soddisfatti di loggare tramite UDP a un (win) syslogd con esso. Si potrebbe dire che è (quasi) una funzionalità completa che potrebbe essere una spiegazione per le versioni recenti "mancanti". – andyp

4

Sto andando con i suoi morti.

Per me bug come questo (https://issues.apache.org/jira/browse/LOG4NET-132) seduto in giro per anni: un progetto è morto

Usa NLog invece

http://nlog-project.org/

+0

Un po 'più tardi della domanda, ma sono d'accordo. NLog è un sistema di registrazione ben gestito, e ora che NHibernate ha rimosso la dipendenza da log4net, non c'è ragione di non usarlo. – Dann

+0

Come aggiornamento ho finito con l'utilizzo di NLog per il progetto. Funziona alla grande!! – Chip