Custom Appender für Log4J 1.x

vorhergehende Artikel in: Java Komponenten OpenSource
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 Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • OAuth und OTP

    16.02.2020

    Wie bereits beschrieben will ich mich demnächst näher mit OAuth befassen...

    Weiterlesen...

Neueste Artikel

  • Split von Filesets in Apache ANT

    Ich musste neulich darüber nachdenken, eine Parallelisierung für einen meiner ANT-Tasks in meinem Static Site Generator einzubauen.

    Weiterlesen
  • Ein Doclet zur Erzeugung von DocBook aus Javadoc

    Ich habe mich mit der Idee zu diesem Projekt Monate abgequält - hätte ich gewusst, was die eigentliche Implementierung für Qualen verursachen würde, hätte ich sie wahrscheinlich eingestampft.

    Weiterlesen
  • Motion JPEG Erzeugung aus Java heraus

    Da ich mich in den letzten Wochen wieder einmal mit Javas Sicherheitsmechanismen und dem Erzeugen von Animationen beschäftigt habe, habe ich den Entschluss gefasst, die bisher mittels JMF AVIs in dWb+ zu erstetzen - nur wodurch?

    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, muss 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 Codeberg-Repositories findet man hier.