2009-11-02 18 views
24

Szukam ramy logowania i wydaje się, że log4net jest lub był bardzo popularny. Ostatnie wydanie było ponad 2 lata temu. Nie został zaktualizowany dla .net 3.0 lub 3.5 lub nawet Visual Studio 2008. Czy jest coś bardziej aktualnego (inne niż entlib), które powinienem wziąć pod uwagę?Czy log4net jest martwy?

+13

Czy coś jak rejestrowanie biblioteka wymaga ciągłej aktualizacji? Użyłem go i działa całkiem nieźle. – Min

+5

EntLib to * NIE * coś, co powinieneś rozważyć. Użyj log4net –

+0

Jakie jest twoje rozumowanie "nie" przy użyciu EntLib? Czy nie jest to kod "najlepszej praktyki" EntLib? – Chris

Odpowiedz

12

Log4j (który był podstawą dla log4net) nie był aktualizowany od lat. Istnieją inne alternatywy tego samego autora (slf4j i logback) i inne, ale log4j jest nadal używany dużo i dużo opłacalne. Nie jest martwy, po prostu doszedł do punktu, w którym nic więcej nie było potrzebne. Nic, co usprawiedliwiało pracę lub nie złamałoby wstecznej zgodności. Kiedy dzieje się to z komercyjnym projektem, firma musi wymyślić zupełnie inny cel dla produktu lub zrobić coś innego, a produkt rzeczywiście umiera. W otwartym kodzie źródłowym tak naprawdę nie.

Dla porównania, JUnit od lat nigdzie nie chodził. Wtedy Java dostała adnotacje, JUnit dostała konkurencję (TestNG) i nagle znów się porusza. Obecnie twórcy oryginalni mogą nie być w każdym przypadku, ale wtedy projekt byłby rozwidlony lub dostosowany. Na przykład TestNG umożliwił gładką ścieżkę migracji z JUnit.

Najważniejsze jest to, czy jest popularne i używane, ale nie umrze.

11

log4net to port czegoś oryginalnie napisanego w języku Java. Port jest mniej lub bardziej kompletny.

Dodatkowo, port ukierunkowany na środowisko wykonawcze .Net 2.0 oraz .Net 3.0 i .Net 3.5 również zostały zbudowane na tym samym środowisku wykonawczym. Dlatego możesz załadować log4net do Visual Studio 2008 i użyć go w projekcie .Net 3.5, jeśli chcesz. Rozumiem, że nie ma obecnie potrzeby tworzenia nowej wersji specjalnie dla .Net 3.5 lub Visual Studio 2008. Visual Studio 2010 może oczywiście to zmienić (nowe środowisko uruchomieniowe).

+1

Joel Zgadzam się z tobą w teorii. Stabilny i ma cechy, ale w stagnacji oprogramowania = śmierci. Nie warto inwestować czasu, jeśli tak jest. – Chip

+0

Cóż, wersja beta 2 gry vs2010 jest już dostępna i zawiera licencję na uruchomienie.Warto więc sprawdzić, czy jest jakiś ruch w kierunku wydania _eventual_ dla .Net 4. –

+3

Nie sądzę, że jest martwy, ponieważ jesteśmy całkiem zadowoleni z logowania przez UDP do (win) syslogd z tym. Można powiedzieć, że jest to (prawie) pełna funkcja, która może być wyjaśnieniem "brakujących" ostatnich wydań. – andyp

4

Idę ze swoimi zmarłymi.

Dla mnie bug tak (https://issues.apache.org/jira/browse/LOG4NET-132) siedzi od lat oznacza projekt jest martwy

Zastosowanie NLog zamiast

http://nlog-project.org/

+0

Nieco później niż pytanie, ale zgadzam się. NLog to dobrze utrzymany system rejestrowania, a teraz, gdy NHibernate usunął zależność log4net, nie ma powodu, aby go nie używać. – Dann

+0

Jako aktualizacja, skończyłem używać NLog dla projektu. Działa świetnie!! – Chip