Einleitung
Archive-Logging (logall / logall_json) gehört zu den mächtigsten, aber zugleich riskantesten Funktionen im Wazuh-Manager. Es ermöglicht vollständige Transparenz über alle verarbeiteten Events – inklusive jener, die keine Alerts erzeugen. Genau diese Eigenschaft macht Archive-Logs für Debugging, Troubleshooting und Regelentwicklung unverzichtbar. In produktiven Umgebungen mit hohem Eventdurchsatz kann das globale Aktivieren von Archives jedoch schnell zum operativen Risiko werden.
Ausgangslage / Problemstellung
In realen SOC-Szenarien wird archives.json typischerweise temporär aktiviert, um Probleme zu analysieren, etwa:
- Warum ein bestimmter Agent keine Alerts erzeugt
- Warum ein Decoder oder eine Regel nicht greift
- Welche Rohdaten tatsächlich beim Manager ankommen
Das Problem dabei:
logall_json=yeswirkt global auf alle Agents- Disk-I/O steigt sprunghaft an
- Storage kann sich in kurzer Zeit füllen
- Bei hoher IOPS-Last drohen Event-Drops oder verzögerte Verarbeitung
- Wird das Feature zu spät wieder deaktiviert, entsteht ein Produktionsproblem
In vielen Fällen benötigt man Archive-Logs nur für einen oder wenige Agents, nicht für das gesamte Environment.
Technische Analyse
Wie Archive-Logging heute funktioniert
logallschreibt alle Roh-Events nacharchives.loglogall_jsonschreibt alle Events strukturiert nacharchives.json- Die Entscheidung erfolgt sehr früh im Wazuh-Pipeline-Flow, noch vor Regeln und Alerts
- Es existiert aktuell keine Filtermöglichkeit:
- nicht nach Agent-ID
- nicht nach Gruppe
- nicht nach Decoder
- nicht nach Quelle
Das bedeutet: Sobald aktiviert, werden alle Events aller Agents persistiert.
Operative Nebenwirkungen
In Umgebungen mit hunderten oder tausenden Agents führt das zu:
- massiv erhöhter Schreiblast auf dem Manager
- schnellem Wachstum von
/var/ossec/logs/archives* - erhöhter CPU-Last durch JSON-Serialisierung
- zusätzlicher Belastung für Backup- und Logrotate-Mechanismen
Gerade in Clustern mit Shared Storage oder begrenzten IOPS ist das ein reales Stabilitätsrisiko.
Lösungsansätze / Best Practices (Stand heute)
1) Wunschfunktion: selektives Archive-Logging nach Agent-ID
Die vorgeschlagene Erweiterung ist konzeptionell einfach, aber hochwirksam:
<global>
<logall_json>yes</logall_json>
<logall_ids>017,021,033,127</logall_ids>
</global>
Effekt:
- Nur Events der angegebenen Agent-IDs werden in
archives.jsongeschrieben - Debugging wird gezielt möglich
- Disk- und IOPS-Last sinkt drastisch
- Produktivbetrieb bleibt stabil
Diese Funktion existiert aktuell nicht, wurde aber als offizieller Feature Request eingereicht.
2) Aktuelle Workarounds (mit Einschränkungen)
Custom Rules sind kein Ersatz für Archive-Logging
Zwar lassen sich Regeln schreiben, die nur für bestimmte Agent-IDs Alerts erzeugen, aber:
- Rules greifen nach der Archive-Phase
- Nicht-Alert-Events landen trotzdem nicht in
archives.json - Für Decoder- und Parsing-Debugging sind Rules ungeeignet
Indexer-Seite hilft hier ebenfalls nicht
- Archive-Logs entstehen vor Filebeat und Indexer
- Ingest Pipelines oder Index-Routing können Archive-Logging nicht beeinflussen
- Das Problem ist rein Manager-seitig
Pragmatische Notlösung
- Archive-Logging nur kurzzeitig aktivieren
- Agent-Gruppen temporär deaktivieren
- Separate Test-Manager oder isolierte Testumgebungen nutzen
All diese Maßnahmen erhöhen jedoch operativen Aufwand und Risiko.
Lessons Learned / Best Practices
- Archive-Logging ist ein Diagnosewerkzeug, kein Dauerzustand
- In größeren Umgebungen ist globales
logall_jsonfaktisch nicht skalierbar - Debugging-Anforderungen sind meist agent-spezifisch, nicht global
- Eine fehlende Filtermöglichkeit zwingt Administratoren zu riskanten Workarounds
- Selektives Logging würde Wazuh in Enterprise-Szenarien deutlich robuster machen
Fazit
Die Möglichkeit, Archive-Logs gezielt auf einzelne Agents zu beschränken, wäre eine kleine Erweiterung mit großem operativem Nutzen. Sie würde das Risiko von Disk-Exhaustion und Performance-Einbrüchen drastisch reduzieren und gleichzeitig das Debugging in produktiven Umgebungen deutlich erleichtern. Bis eine solche Funktion verfügbar ist, bleibt Archive-Logging ein mächtiges, aber gefährliches Werkzeug, das nur mit äußerster Vorsicht eingesetzt werden sollte.
Mehr zu Wazuh …
https://wazuh.com/?utm_source=ambassadors&utm_medium=referral&utm_campaign=ambassadors+program
Mehr zum Wazuh Ambassador Program …
https://wazuh.com/ambassadors-program/?utm_source=ambassadors&utm_medium=referral&utm_campaign=ambassadors+program
https://wazuh.slack.com/archives/C0A933R8E/p1769537777479909