Der Betrieb einer Microservices- und/oder einer Containerinfrastruktur birgt beim Logging — gelinde gesagt — einige Herausforderungen. Die Infrastruktur ist volatil, das Debugging einer Benutzersession über Logfiles eines einzigen Servers ist nicht mehr möglich. Eine zentrale Logging-Infrastruktur zum Einsammeln, Verarbeiten und Speichern von Logs muss her!
Allerdings ist solch eine zentrale Logging-Infrastruktur nicht mit einer "Shared Nothing"-Architektur kompatibel. Konsequenterweise muss dort jedes Team seine eigene Logging-Infrastruktur betreiben. Ehrlicherweise fehlt es dazu den meisten Teams an Zeit und Wissen, weshalb der Architekturansatz hier dann bricht.
Am Beispiel von Shopping24 zeigt dieser Talk, wie wir die Herausforderung mit Methoden der Softwareentwicklung gemeistert haben. Gemeinsam werden Schnittstellen definiert, eine Default-Logging-Implementation bereitgestellt und die Teams können diese Implementation nach Bedarf erweitern. Mit ein wenig Governance können wir dann sicherstellen, dass die Teams untereinander von neuen Features und Versionen profitieren.