Custom Appender für Log4J 1.x

vorhergehende Artikel in: Java Komponenten Git(lab|hub)
17.03.2018

Nachdem ich erfolglos versucht habe, Log4J 2 auf Arbeit in ein Projekt zu integrieren (Die Liste der Abhängigkeiten ist endlos und für ein Framework, dessen einziger Zweck das Logging ist, ehrlich gesagt eine Frechheit), habe ich neulich wieder einmal mit der Idee herumgespielt, Log4J 1.x komplett zur Laufzeit konfigurierbar zu machen. Als Abfallprodukt sind zwei neue Appender entstanden.

Beide Appender sind als Gists auf GitHub zu finden: SyntaxDocumentAppender.java loggt in eine Text-Komponente hinein. Ich habe dazu die JEdit-Komponente benutzt (näheres dazu in der Beschreibung des Gist), die ich bereits vor einiger Zeit gebrancht und durch die eine oder andere Zugabe ein wenig aufgewertet habe (Dient unter anderem in der sQLShell als Grundlage des SQL-Editors und dort wie auch in dWb+ als Java-Editor für die Anpassung verschiedener BeanShell-Skripte.

Damit ist diese Komponente nicht sofort in eigenen Projekten einsetzbar - aber die Abhängigkeiten von der JEdit-Komponente beziehungsweise meiner Interpretation davon sollte im Handumdrehen gegen Eigenes austauschbar sein...

JMXAppender.java ist ein Appender, der Logging-Events als JMX-Notifications an eventuell vorhandene Abonnenten sendet. Der ObjectName ist im Quelltext zur Zeit noch fest eingestellt - aber das zu ändern sollte vernachlässigbaren Aufwand verursachen. Wichtig ist noch, dass der Logging-Event in ein javax.management.openmbean.CompositeData-Objekt umgewandelt und ebenfalls übertragen wird - wichtig für Clients, die darauf basierend beispielsweise Filter implementieren möchten.

Artikel, die hierher verlinken

Fork der BeanShell wegen Trojan Source

19.12.2023

Es gibt inzwischen einen von mir erstellten Fork des originalen Repository, in dem ich die Komponente zur Darstellung der Konsole gegen die ausgetauscht habe, die in der sQLshell in den Plugins MDIJavaEditor und MDISqlEditor zum Einsatz kommt - dadurch wird wenigstens durch das Syntax-Highlighting auf problematische Stellen im Code hingewiesen.

AugmentedJEditTextArea

29.01.2022

Ich habe bereits verschiedentlich auf eine Komponente verwiesen, die ich aus einer frühen Version des Editors JEdit erstellt habe - zuletzt als ich über den Fork zur Verbesserung der BeanShell wegen der Trojan Source Vulnerability berichtete.

Log4J Plugin für JConsole/VisualVM

25.03.2018

Während meines Jahreswechselurlaubes versuche ich immer ein wenig Bildungsurlaub zwischenzuschieben. Dazu zählt der chaos communication congress ebenso wie manche Fingerübung. Aus einer dieser Fingerübung entstand ein kleines Projekt, das bis zu einem GitHub-Repository gewachsen ist...

InfluxDB Appender für Log4J 1.x

17.03.2018

Nachdem ich vor einiger Zeit zwei Appender für Log4J 1.x vorgestellt habe, habe ich - motiviert durch meine Experimente mit Raspi und ADS-B - einen weiteren verfasst - diesmal zum Schreiben der Daten in eine Zeitreihendatenbank.

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • CI/CD mit shellcheck

    13.10.2019

    Ich habe mich entschlossen, in meinen diversen Shell-Projekten shellcheck als Mittel zur Qualitätssicherung einzusetzen.

    Weiterlesen...

Neueste Artikel

  • Linux-System SBOM visualisiert als Graph

    In meinem $dayjob kam neulich die Frage auf, ob es möglich wäre, die aktuelle Softwareinstallation eines Linux-Systems als Software Bill of Materials (SBOM) zu exportieren.

    Weiterlesen...
  • Visualisierung von Datenmodellen als gerichtete Graphen

    Ich habe - motiviert durch meine Experimente zur Visualisierung von Paketabhängigkeiten in Linux-Installationen als interaktive Graphen - versucht, relationale Datenmodelle in ähnlicher Form zu visualisieren und dazu zwei Plugins für die sQLshell geschrieben.

    Weiterlesen...
  • Carl Sagan - Christmas Lectures at the Royal Institution

    Die Royal Institution hat in ihren Schätzen gegraben und die Christmas Lectures von Carl Sagan auf Youtube nochmals veröffentlicht. Meiner Ansicht nach unbedingt lohnenswert für alle, die Englisch verstehen!

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.