Ein kürzlich erschienener Artikel über Logging Guidelines hat mich stutzig gemacht. Er macht einen Old-School Eindruck. Heutzutage gibt es doch bestimmt ein Logging Framework das die dort aufgezählten Guidelines überflüssig macht. Kennt jemand so ein Framework? Oder befolgt ihr selbst solche Guidelines?
grundsätzlich resultieren die Guidelines aus best practices für das eingesetzte logging framework. Mit einem "älteren" Framework sollte man sich auch an die "alten" Guidelines halten.
Wenn die Möglichkeit besteht das logging framework selbst zu wählen, würde ich die Kombination slf4j[1] + logback[2] empfehlen.
Slf4j ist eine Fassade, mit der man mehrere logging frameworks ansprechen kann. Logback ist eine native Implementierung von slf4j und stellt die Weiterentwicklung vom bisherigen quasi-Standard log4j dar. Siehe auch [3].
Mit slf4j+logback kann man einige der oben verlinkten Guidelines ignorieren. Z. Bsp. ist das Prüfen auf den aktuellen log-level nicht mehr notwendig, da diese Prüfung vom logback selbst vorgenommen wird:
JA, ich denke diese Guidelines entsprechen nicht mehr unbedingt den heutigen bzw. moderneren Standards. Obwohl es eine schöne Übersicht ist, wie man prinzipiell ein eigenes Logging umsetzen kann / sollte. Gerade für kleinere Tools oder Programme kann das nützlich sein, man will ja auch nicht immer ein komplettes Framework dahinter packen.
Aber ich habe einen Eintrag im Wiki gefunden, der zugleich ein paar Logging Frameworks und deren Unterschiede beschreibt.
DIe Prüfung auf das aktuelle Loglevel kann durchaus sinnvoll sein. Wenn beispielsweise für einen Debuglogeintrag dieser erst aufwändig zusammengebaut wird sollte man vor diesem Zusammenbau prüfen ob das LogLevel überhaupt Debug ist.