Einleitung
In der heutigen datengetriebenen Welt ist ein fortschrittliches Logging und Log-Management entscheidend für den Erfolg und die Stabilität jeder IT-Infrastruktur. Angesichts der zunehmenden Komplexität von Systemen, insbesondere in Cloud-Umgebungen wie Azure, ist es unerlässlich, Log-Daten nicht nur zu verwalten, sondern sie als Schlüssel für tiefgreifende Einblicke in Performance, Sicherheit und Effizienz zu nutzen.

Unsere Azure-basierte Log-Management-Lösung bietet eine maßgeschneiderte Antwort auf diese Herausforderungen, indem sie Unternehmen mit den Werkzeugen ausstattet, die sie benötigen, um ihre Systeme effizient zu überwachen, schnell auf Probleme zu reagieren und kontinuierliche Verbesserungen sowie Compliance zu gewährleisten.
Zentrale Herausforderungen des Loggings und Lösungen:
- Integration und Vereinheitlichung verschiedener Systeme:
- Herausforderung: Die Vielfalt und Heterogenität von IT-Systemen und Anwendungen in einer Cloud-Umgebung erschweren ein einheitliches Log-Management.
- Lösung: Durch zentralisierte Logik mit Azure Functions integrieren wir Systeme und Anwendungen nahtlos. Dies schafft eine Plattform für Logs und reduziert Komplexität.
- Kosteneffizienz im Log-Management:
- Herausforderung: Die Verwaltung großer Mengen an Log-Daten kann schnell zu hohen Kosten führen, insbesondere ohne optimierte Datenmanagementstrategien.
- Lösung: Durch die Nutzung von Azure Functions für die bedarfsorientierte Verarbeitung von Log-Daten und den Einsatz von kosteneffizienten Speicherlösungen innerhalb von Azure optimieren wir die Kosten für die Datenspeicherung und ‑verarbeitung. Dies ermöglicht eine flexible und skalierbare Log-Management-Lösung, die sich den Bedürfnissen und dem Budget des Unternehmens anpasst.
- Effiziente Identifikation und Behebung von Problemen:
- Herausforderung: Die schnelle Erkennung und Behebung von Problemen ist entscheidend, um Betriebsunterbrechungen zu minimieren und die Integrität der IT-Infrastruktur zu sichern.
- Lösung: Durch die Verwendung von Azure Functions zur Automatisierung der Log-Analyse und des Problemmanagements können wir effizient auf Systemereignisse reagieren. Mit benutzerdefinierter Logik identifizieren und lösen wir Probleme schnell, was Reaktionszeiten verkürzt.
Architektur des Logging-Frameworks
Unsere Lösung ist modular konzipiert und passt sich jeder IT-Landschaft an.

Zu den Kernkomponenten gehören:
- Storage Account mit Logging Queues und Backup Log Blobs: Fungiert als hochverfügbarer Zwischenspeicher für Log-Nachrichten, sodass auch bei einem teilweisen Ausfall von Systemen Log-Nachrichten erhalten bleiben.
- Azure Key Vault: Verwaltet Secrets (z.B. API-Tokens für technische Benutzer), die zur Anbindung externer Systeme (z.B. Service Now) notwendig sind.
- App Service Plan: Die Processingschicht der Function App. Diese wird benötigt, um die Logginglösung in die interne Netzwerkinfrastruktur unserer Kunden gesichert einzubinden.
- Function App: Das Herzstück der Lösung mit der zentralen Logik um Logbenachrichtigungen, E‑Mails, Service Now – Tickets und weitere automatisiert zu erstellen. Frei erweiterbar für verschiedenste Anwendungsfälle auf Basis der Programmiersprache Python und einfach konfigurierbar über standardisierte Metadatentabellen.
- Private Endpoints und delegated Subnet: Notwendige Netzwerkkomponenten um die Azure Function nahtlos in die IT-Landschaft unserer Kunden einzubinden.
- DevOps Pipelines: Das Deployment aller Artefakte (Programmcode, Infrastruktur, Konfiguration) der Logginglösung auf alle Resourcen (z.B. Azure Function App, Storage Account) wird über einen standardisierten CI/CD Prozess gesteuert, der die lückenlose Konfiguration der Lösung und Veränderungen des Loggings nachweisen kann.
Je nach Anforderungen des Kunden kann diese Infrastruktur auch redundant in verschiedenen Umgebungen (z.B. Development, Integration und Produktion) bereitgestellt werden, um die kontinuierliche Weiterentwicklung des Systems zu ermöglichen, bei weiterer Reduzierung der Gefahr von Produktionseinschränkungen.
Hierarchische Logik für das Logging von Datenpipelines
Damit das Loggingsystem sowohl einfach zu konfigurieren, als auch individuell stark anpassbar ist wird eine hierarchische Logik verwendet wie in der folgenden Abbildung zu sehen.

Ein Systemevent wird von der Logginglösung als einzelnes Logevent erfasst (Azure Storage Queue Objekt), und wird gemäß der konfigurierten Steuerungstabelle von der Azure Function App weiterverarbeitet. In der Steuerungstabelle können dabei Standardregeln definiert werden, wie z.B. ein E‑Mailverteiler für alle kritischen Events (Totalausfall eines Systems oder Datenpipeline) die alle Datenpipelines abdecken. So wird sichergestellt das ein Event auch für neu entwickelte Pipelines von entscheidenden Stakeholdern bemerkt wird, selbst wenn diese Ereignisse noch nicht in der Logginglösung konfiguriert sind.
Auf der nächsten Ebene kann aber auch eine genauere Loggingregel definiert werden, welche die Art des Loggingfehlers genauer definiert. So kann es sein das ein System vielleicht einen kritischen Ausfall erleidet, aber für das Unternehmen zumindest nicht von missions-kritischer Bedeutung ist. In dem Fall genügt die Benachrichtigung von einzelnen technischen Stakeholdern.
Im genauesten definierten Fall kann für jedes einzelne Interface festgelegt werden, wie genau wer benachrichtigt werden soll, wenn bestimmte Fehlercodes oder Fehlerkategorien erscheinen. So kann beispielsweise für die Verarbeitung nur von Schnittstellen von SAP zu einem bestimmten Zielsystem festgelegt werden, dass im Falle eines Fehlerfalls einer Datenpipeline mit unternehmenserfolgsgefährdenden Einfluss, sofort mehrere Business Stakeholder und technische Abteilungen über Dashboards, Service Now Tickets und / oder E‑Mails direkt informiert werden sollen.
Eine Kombination dieser verschiedenen Regeln ist auf jeder der Prioritätsstufen möglich und ermöglicht größtmögliche Flexibilität bei der Umsetzung ihrer Logging-Strategie.
Erweiterbarkeit des Loggings für externe Systeme
Die IT-Systemlandschaft von Unternehmen besteht nicht nur aus internen Systemen, sondern ist häufig auch auf die Zusammenarbeit mit externen Unternehmen angewiesen. Ein Systemausfall dieser Unternehmen kann für ihr Unternehmen von gleicher kritischer Bedeutung sein, wie ein interner Ausfall. Aus diesem Grund ist unsere Lösung so konzipiert das eine einheitliche Schnittstelle auch für externe Unternehmen oder Subunternehmen mit eigener IT-Landschaft und Netzwerken verschlüsselt möglich ist. Dies kann beispielsweise über das Private Link System von Azure geschehen, wodurch ein Zugriff auf Systeme außerhalb der Storage Account Logging Queue unmöglich wird, und damit geringere Herausforderungen an ihre interne IT-Sicherheit gestellt werden.
Wer diese Logs in ihr Loggingsystem automatisiert einpflegen darf, und wie ihr Logging auf bestimmte Events reagieren soll, unterliegt dabei genau so ihren Konfigurationswünschen, wie bei den bereits beschriebenen internen IT-Systemen.
Vorteile des Logging-Frameworks:
Zusammfassend an dieser Stelle eine kurze Übersicht über die Vor- und Nachteile die sich im Zuge der Implementierung dieses Logging-Frameworks bei unseren Kunden herausgestellt haben.
Vorteile:
- Schneller und sicherer Aufbau: Speziell auf Unternehmensbedürfnisse zugeschnittene, standardisierte Lösung ermöglicht eine zügige und sichere Implementierung.
- Hohe Flexibilität: Unterstützt eine Vielzahl von Logging-Szenarien „out-of-the-box“ und bietet ebenso Anpassungsfähigkeiten für spezifische Anforderungen.
- Einfache Erweiterbarkeit: Mittels Python können E‑Mail-Vorlagen, Loggingregeln und die Integration diverser Systeme einfach angepasst werden.
- Vollständige CI/CD-Dokumentation: Sichert die Nachvollziehbarkeit und Auditierbarkeit von Änderungen im Logging-System.
- Hoher Sicherheitsstandard: Erfüllt hohe Sicherheitsanforderungen, minimiert Risiken für die IT-Infrastruktur.
- Nahtlose Integration: Gewährleistet problemlose Einbindung in die bestehende Netzwerkarchitektur.
- Wartungsarm und kosteneffizient: Bietet eine wartungsarme, preiswerte Lösung, die komplexe Logging-Strategien unterstützt.
- Schnelle Markteinführung: Bewährte Vorgehensweise ermöglicht eine rasche Implementierung mit bereits erfolgreich umgesetzten Kundenprojekten.
Nachteile:
- Erforderliches Wissen: Für die Einrichtung und Anpassung ist Fachwissen über Azure-Komponenten und deren Konfiguration notwendig.
- Integrationserfordernis: Die vollständige Integration der Azure-Komponenten in die bestehende IT-Infrastruktur ist unumgänglich, was Ressourcen und Zeit in Anspruch nehmen kann.
Fazit:
Unsere Azure-basierte Log-Management-Lösung stellt eine zukunftssichere, flexible und kosteneffiziente Möglichkeit dar, den Anforderungen moderner IT-Infrastrukturen gerecht zu werden.
Die Lösung ist maßgeschneidert, um auch anspruchsvolle Kundenanforderungen zu erfüllen, und bietet durch die Nutzung von Azure-Standardkomponenten eine nahtlose Integration in bestehende Systeme. Durch die bestehenden Implementierungen bei mehreren Kunden bestätigt unsere Lösung eine schnelle Time-To-Market und ermöglicht die Erweiterung ihrer Funktionalitäten für ihre spezifischen IT-Systemlandschaften mit geringem Kostenaufwand.