Log4j - wie geht's euch damit?
Geizhals » Forum » Security & Viren » Log4j - wie geht's euch damit? (106 Beiträge, 1558 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
..
Re(2): Log4j - wie geht's euch damit?
14.12.2021 13:00:25
Dass es fuer Java so vglw. viele prominente Logging-Frameworks gibt ist meiner (laienhaften - das Java-Oekosystem finde ich ziemlich ekehalft und meide ich bei allen sich bietenden Gelegenheiten nach Kraeften - und auch nicht sorfgaeltig recherchierten, folglich also eigentlich rein spekulativen und unfundierten ;)) Meinung/Ansicht nach der Weigerung von Sun geschuldet, sich schon in einer fruehen Release zur vernuenftigen Anbindung an die Logging-Mechanismen der Host-OS-Plattformen (syslog, Eventlog, younameit) zu ueberwinden. Damals sah man Java wohl noch als tatsaechlich universelle, transitive Huelle ueber alle Host-Plattformen hinweg, und deswegen wollte man sich nicht in diese Niederungen der Realitaet hinabbegeben. So wie man sich bspw. auch UNIX Domain Sockets die laengste Zeit verweigert hat.

Das hat dann natuerlich dazu gefuehrt, dass man mit der rudimentaeren Scheisze aus java.util.logging gelebt hat, und das mussten/wollten/durften dann viele Java-Enterprise-Menschen erweitern und ver(schlimm)besseren mit ihren eigenen Implementierungen. Nur eine Frage der Zeit, bis sowas dann im Apache-Kosmus aufschlaegt oder gar dort seinen Ursprung findet. Dann braucht man, Java-typisch, alles mit viel sich technologisch anfuehlendem Brimborium konfigurier- und austausch- und misch- und ver(schlimm)besserbar - am besten mit einem Batzen XML, wo dir dann zur Laufzeit noch ueberraschend was um die Ohren fliegen kann - und fertig ist der perfekte Vektor der schlimmsten Cybersecurity-Luecke der juengeren Geschichte.


Noch was Sachdienliches zum Schluss meines Rants: log4j und Konsorten zeichnen sich in der Praxis halt dadurch aus, dass du z. B. den Sink (also den Ort, wohin der Log-Strom kommt - meistens simple Dateien) ueber weithin bekannte Konventionen (JVM-Properties) konfigurieren kannst. Oder auch Logs nach Prioritaeten aufteilen/ausblenden/umlenken. Manche Java-Logging-Frameworks ermoeglichen dir auch die Interaktion mit Naming und Directory Services aus Log-Nachrichten heraus; superpraktisch!!1! ;) Auch so laestige Sachen wie das Rotieren von Logfiles oder das Partitionieren von Logs nach Zeit und/oder Volumen sind typischerweise moeglich.

Ich hab das immer als de facto extrem laestig empfunden, weil man das (also, eine Logging-Policy definieren und implementieren) zumindest fuer jede Applikation eigens machen muss - syslog oder das systemd journal sind da wegen der Zentralisierung aller Policy imo viel angenehmer.

Mit dem Container/Docker-Wahnsinn der letzten Jahre und 12-Factor-Apps dreht man in dieser Hinsicht die Logging-Komplexitaetsschraube wieder in die Gegenrichtung; da kotzt alles nur noch unstrukturiert syslog-artig auf stdout, und die Container-Runtime macht dann das Beste (oder halt irgendwas) draus. Aber das ist immer noch das kleinere der beiden Uebel, finde ich.
 --

echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc

So long, and thanks for all the uptime!


Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
......
Re(6): Log4j - wie geht's euch damit?
15.12.2021 10:59:51
> Wenn eine gerade mal für Ausbildungszwecke halbwegs geeignete Sprache unkontrolliert in den Produktivbetrieb sickert

Ich weiß schon dass es zum Running gag wurde, sich über Java zu belustigen, und ich kann mit der Sprache auch ungefähr überhaupt nichts anfangen (weil komplett nutzlos für meine finsteren bare metal Ambitionen), aber die Sprache ist an und für sich erstmal 90er Jahre OOP, welche über die Jahrzehnte hinweg durch Cargocult-Devs mitgeformt wurde und für die sich zahlreiche komplett überfrachtete Lib-Konstrukte ergeben haben (die man nicht nutzen muss).

> Empfehlenswert übrigens auch der Gastbeitrag von Kristian Köhntopp bei heise.

Ironisch dass der Beitrag auf einer Seite veröffentlicht wird, welche dir ohne Contentblocker einfach mal 350k an Scriptingdünnpfiff von irgendwelchen Drittquellen laden würde.

Aber hey: Des einen Leid ist des anderen Freud. Ich blicke mit Freude auf die nächste Generation höchst dynamischen Codeabfalls (vulgo "microservices"), welche über npm (bereitgestellt von windigen Kurzzeitmaintainern), irgendwelchen Wordpress-Blogs und ohne Kenntnis über async, await und futures (*räusper* Verzeihung ich meinte Promises) zusammengeklickt und tausendfach repliziert auf k8s laufen (weil nur so die Controller zufrieden sind), denn diese transitive hell dürfte in wenigen Jahren das Rumgeeiere der Java Devs über die vergangenen 20 Jahre lächerlich aussehen lassen.

15.12.2021, 11:29 Uhr - Editiert von scientificallyilliterate, alte Version: hier
Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung