<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Observability on Allen Ziegenfus</title><link>https://allenz.net/tags/observability/</link><description>Recent content in Observability on Allen Ziegenfus</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Wed, 22 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://allenz.net/tags/observability/index.xml" rel="self" type="application/rss+xml"/><item><title>Structured JSON logging for a legacy Java app on Kubernetes — without forking the image</title><link>https://allenz.net/writing/structured-json-logging-for-a-legacy-java-app-on-kubernetes-without-forking-the-image/</link><pubDate>Wed, 22 Apr 2026 00:00:00 +0000</pubDate><guid>https://allenz.net/writing/structured-json-logging-for-a-legacy-java-app-on-kubernetes-without-forking-the-image/</guid><description>How to retrofit machine-parseable JSON logging onto a legacy Java app on Kubernetes — both log4j2 and Tomcat&amp;rsquo;s JUL — without forking the vendor image, as an opt-in, fail-open, cleanly revertible layer.</description></item></channel></rss>