Startseite
» MS OFFICE
»
So debuggen Sie Collabora-Online-Verbindungsprotokolle mit dem Protokollierungsgrad „coolwsd“.
So debuggen Sie Collabora-Online-Verbindungsprotokolle mit dem Protokollierungsgrad „coolwsd“.
Die aktuelle öffentliche Konfigurationsvorlage von Collabora Online stellt weiterhin die Protokollierungsstufe logging.levelin der Datei bereit coolwsd.xml, wobei Werte von warning0 bis debug1 unterstützt werden trace. Um einen Verbindungsfehler zu beheben, erhöhen Sie die Protokollierungsstufe kurzzeitig, reproduzieren Sie eine fehlgeschlagene Verbindung, überprüfen Sie das tatsächliche Protokollziel des Dienstes und stellen Sie die normale Stufe anschließend wieder her. Der in der XML-Datei angezeigte Wert ist nicht immer der effektive Wert: Ein Startbefehl oder eine Containereinstellung kann ihn überschreiben, und Bereiche mit hoher Protokollierungsintensität, wie z. B. die WebSocket-Protokollierung, können separat deaktiviert werden.
Dieser Leitfaden konzentriert sich auf die Diagnose von Verbindungsfehlern zwischen Browser und Collabora sowie auf Probleme beim Öffnen von Dokumenten. Er basiert auf der aktuellen öffentlichen coolwsd.xml.inQuellcodevorlage und offiziellen Collabora-Dokumenten (Stand: 6. Oktober 2026). Paketstandardwerte und Dienstnamen können je nach Version und Bereitstellung variieren. Überprüfen Sie daher Ihre laufende Instanz, bevor Sie Pfade kopieren oder Neustartbefehle ausführen.
Welche Änderungen gibt es für den CoolWSD-Protokollierungsgrad?
coolwsdDer Collabora Online WebSocket Daemon ist der Serverprozess, der Browsersitzungen und Dokumentaktivitäten verwaltet. Sein Protokollierungsgrad bestimmt, wie detailliert die Protokolle sind. Die aktuelle Quellcodevorlage listet benannte Stufen wie „debug“ fatal, „debug“ , „debug “, „ debug “ und „debug“ sowie numerische Stufen von 0 bis 8 auf. Die numerischen Werte ordnen die Protokollierungsstufe von der geringsten zur höchsten Ausführlichkeit. Für eine erste Diagnose ist Stufe 1 ausreichend; verwenden Sie Stufe 2 nur, wenn Sie detailliertere Verbindungsinformationen benötigen.criticalerrorwarningnoticeinformationdebugtracedebugtrace
Die separate Einstellung steuert die Protokollierung beim ersten Startvorgang; anschließend wird die Protokollierung wieder auf das in der aktuellen Vorlage festgelegte level_startupNiveau zurückgesetzt . Dies bedeutet jedoch nicht, dass die Protokollierung im Normalbetrieb auf dem Niveau „Trace“ verbleibt. Vermeiden Sie Änderungen, wenn das Problem bereits nach dem Start des Dienstes auftritt.leveltracelevel_startup
Eine ausführlichere Protokollausgabe kann das Protokollvolumen erhöhen und URLs, Adressen, Sitzungskennungen oder andere Betriebsdetails enthalten. Behandeln Sie Protokolle vertraulich; erfassen Sie nur den benötigten Zeitraum und schwärzen Sie sensible Daten, bevor Sie sie weitergeben.
Schritt 1: Ermitteln Sie, wie diese Collabora-Instanz funktioniert
Ermitteln Sie zunächst, ob Collabora Online als Systemdienst, in Docker oder Podman oder in Kubernetes ausgeführt wird. Dies ist wichtig, da Änderungen an einer Datei innerhalb eines laufenden Containers möglicherweise nicht dauerhaft gespeichert werden und Containerprotokolle gegebenenfalls in die Standardausgabe anstatt in eine Datei geschrieben werden.
Systempaket: Überprüfen Sie den laufenden Dienst und seinen Unit-Namen (üblicherweise coolwsd). Die Konfiguration ist üblicherweise /etc/coolwsd/coolwsd.xml. Ältere Versionen verwenden möglicherweise einen Legacy- loolwsdPfad.
Docker oder Podman: Ermitteln Sie den Containernamen und die Art der Konfigurationsbereitstellung. Eine eingebundene Datei oder eine Deployment-Variable dient üblicherweise als persistente Konfigurationsquelle.
Kubernetes: Überprüfen Sie die Helm-Werte, die ConfigMap oder das Deployment-Manifest, das die entsprechenden Informationen bereitstellt coolwsd.xml. Das direkte Bearbeiten eines Pods ist nur temporär.
Die aktuelle öffentliche Konfigurationsvorlage zeigt separate Werte für die normale Protokollierung und die anfängliche Startphase.
Erstellen Sie vor der Bearbeitung eine Sicherungskopie der eigentlichen Konfigurationsdatei oder speichern Sie eine Kopie der Bereitstellungswerte. Wenn Sie nicht sicher sind, welche Datei der laufende Prozess liest, überprüfen Sie zunächst dessen Dienstdefinition oder Startbefehl. Eine häufige Ursache für scheinbare Funktionslosigkeit ist die Bearbeitung einer Beispieldatei anstelle der aktiven Konfiguration.
Schritt 2: Erhöhen Sie vorübergehend das aktive Level.
Suchen Sie im aktiven Bereich coolwsd.xmlden <logging>entsprechenden Abschnitt und ändern Sie nur den Wert darin <level>. Beginnen Sie mit debug. Falls der Verbindungsversuch immer noch nicht genügend Details liefert, verwenden Sie kurz tracefür eine Reproduktion. Belassen Sie die vorhandenen level_startup, Dateieinstellungen und sonstige Konfigurationen unverändert.
Verwenden Sie die Ablaufverfolgung vorübergehend, wenn der Debug-Modus nicht genügend Details anzeigt; die Starteinstellungen und andere XML-Optionen bleiben erhalten.
Dies ist ein verkürztes Beispiel der relevanten XML-Struktur und ersetzt nicht die vollständige Konfigurationsdatei. Bei Container-Bereitstellungen legen Sie die Option über den vom jeweiligen Image oder Chart unterstützten Mechanismus zur persistenten Speicherung fest. Der offizielle Collabora-Quellcode enthält Konfigurationsüberschreibungen für die Befehlszeile. Sollte der Wert ignoriert werden, prüfen Sie die Startargumente oder Bereitstellungsparameter auf einen zweiten logging.levelWert.
Wenn Protokolle in eine Datei geschrieben werden, dokumentiert die aktuelle Quellcodevorlage den Dateipfad unter `/usr/log/log` logging.file, üblicherweise `/ usr/log/ /var/log/coolwsd.loglog`. Die Dateiprotokollierung kann jedoch in einer Produktionsumgebung deaktiviert sein. Wenn Sie die Dateiausgabe aktivieren oder einen benutzerdefinierten Pfad verwenden, stellen Sie sicher, dass das coolDienstkonto dort schreiben kann und dass systemd dem Dienst den Schreibzugriff auf diesen Speicherort erlaubt. Machen Sie die Protokolldatei nicht für alle Benutzer lesbar, um ein Berechtigungsproblem zu lösen.
Schritt 3: Neustart oder erneute Bereitstellung, dann einmalig reproduzieren
Die meisten vorkonfigurierten Pakete werden nach einem Neustart des Dienstes wirksam. Starten Sie den Dienst während eines geeigneten Wartungsfensters oder einer Testumgebung neu, da aktive Bearbeitungssitzungen unterbrochen werden können. Für einen systemd-Dienst lautet ein typischer Befehl:
sudo systemctl restart coolwsd
sudo systemctl status coolwsd --no-pager
Verwenden Sie den tatsächlichen Dienstnamen auf Ihrem Host. Aktualisieren Sie bei einem Container die persistente Konfiguration und starten Sie den Container neu oder stellen Sie ihn erneut bereit. Wenden Sie bei Kubernetes die Manifest- oder Helm-Änderung über Ihren normalen Release-Prozess an. Stellen Sie sicher, dass der Prozess fehlerfrei startet, bevor Sie das Problem reproduzieren.
Notieren Sie den genauen Zeitpunkt, den betroffenen Benutzer oder das Testkonto, den Schritt beim Öffnen des Dokuments und den im Browser sichtbaren Fehler. Reproduzieren Sie den Fehler einmal und beenden Sie anschließend die Generierung von Anfragen. Ein einzelner, mit einem Zeitstempel versehener Versuch lässt sich in Collabora, dem Reverse-Proxy und dem Speicher- oder WOPI-Host leichter korrelieren als eine lange Reihe unabhängiger Sitzungen.
Schritt 4: Lesen Sie die Protokollquelle für Ihre Bereitstellung.
Bei einem systemd-Dienst sollte man das Protokoll verfolgen, während man das Problem reproduziert:
sudo journalctl -u coolwsd -f
Um einen begrenzten Bereich der letzten Sitzungen zu untersuchen, verwenden Sie `log` sudo journalctl -u coolwsd --since "10 minutes ago". Falls Ihre Einheit einen anderen Namen hat, ersetzen Sie diesen. Verwenden Sie für Docker ` log` docker logs --since 10m --follow CONTAINER_NAMEund ersetzen Sie CONTAINER_NAME`<Containername>` durch den tatsächlichen Containernamen oder die ID. Podman und Kubernetes verfügen über eigene Log-Befehle; konsultieren Sie die Laufzeitdokumentation der Bereitstellung, anstatt anzunehmen, dass eine Hostdatei existiert.
Lesen Sie aus dem aktiven Log-Sink; der Container-Name im Docker-Befehl ist ein Platzhalter, der durch Ihren tatsächlichen Container ersetzt werden muss.
Wenn die Dateiprotokollierung aktiviert ist, überprüfen Sie den konfigurierten Pfad, z. B. sudo tail -F /var/log/coolwsd.log. Der Pfad in Ihrer Datei kann abweichen. Eine fehlende Datei bedeutet nicht zwangsläufig, dass der Dienst keine Protokolle erzeugt hat; er kann stattdessen in das Journal oder die Containerausgabe schreiben.
Schritt 5: Die Verbindungssequenz korrelieren
Beginnen Sie mit den Einträgen zum aufgezeichneten Zeitstempel. Suchen Sie nach Warn- und Fehlermarkierungen sowie nach verbindungsbezogenen Begriffen wie z. B. „“ WOPI, WebSocket„“ Socket, „“ oder dem relevanten Anfragepfad. In einer Datei könnte ein fokussierter erster Filter wie folgt aussehen:
Gehen Sie dann die folgenden Schritte durch: Hat der Browser die öffentliche URL erreicht? Hat der Reverse-Proxy die Anfrage weitergeleitet? Wurde das WebSocket-Upgrade abgeschlossen? Hat Collabora den Dokumenthost kontaktiert? Die Zugriffs- und Fehlerprotokolle eines Proxys können Fragen beantworten, die das coolwsd-Protokoll nicht beantworten kann, z. B. ob die Anfrage den Dienst überhaupt erreicht hat. Meldet der Browser einen WebSocket-Verbindungsfehler, coolwsd protokolliert aber keine entsprechende Anfrage, überprüfen Sie DNS, TLS-Terminierung, Firewall-Regeln und das Routing des Reverse-Proxys, bevor Sie die Dokumentberechtigungen ändern.
Die aktuelle Konfigurationsvorlage listet Socket, WebSocket, Adminund Pixelals Standardeinstellungen disabled_areasfür eine ausführliche Ausgabe auf. Wenn die Protokollierung aktiviert ist, aber Socket-Details fehlen, überprüfen Sie diese Einstellung. Entfernen Sie für eine kurze Diagnose nur die relevanten Einträge Socketoder WebSocketBereiche aus der durch Kommas getrennten Liste deaktivierter Einträge, wobei nicht relevante Einträge beibehalten werden. Starten Sie das System neu oder stellen Sie es erneut bereit und wiederholen Sie den kontrollierten Test. Stellen Sie die ursprüngliche Liste nach der Auswertung der Ergebnisse wieder her.
Schritt 6: Normale Protokollierung wiederherstellen und Beweismittel sichern
Stellen Sie <level>den vorherigen Produktionszustand wieder her, üblicherweise warningin der öffentlichen Quellvorlage, und stellen Sie alle Änderungen wieder her disabled_areas. Starten Sie den Dienst neu oder stellen Sie ihn erneut bereit, falls dies für Ihre Paketierung erforderlich ist. Vergewissern Sie sich, dass der Dienst fehlerfrei funktioniert und keine neuen Debug- oder Trace-Meldungen mehr angezeigt werden. Bewahren Sie nur den zeitlich begrenzten Diagnoseauszug an einem geschützten Ort auf.
Stellen Sie nach dem Test den normalen Protokollierungsgrad wieder her und überprüfen Sie dann einen kurzen, relevanten Auszug, anstatt einen vollständigen Protokollauszug weiterzugeben.
Bevor Sie einen Log-Auszug an den Collabora-Support oder einen Administrator senden, entfernen Sie nach Möglichkeit Zugriffstoken, Autorisierungsheader, signierte URLs, Benutzernamen, private Hostnamen und Dokumentnamen. Bewahren Sie Zeitstempel und den nicht sensiblen Fehlerkontext auf, der zur Reproduktion des Fehlers erforderlich ist.
Häufige Fehler beim Debuggen
Änderung nur level_startup: Diese Einstellung gilt nur für die anfängliche Startphase und wird anschließend auf den Standardwert zurückgesetzt level. Bei einem Fehler nach dem Start ändern Sie die Einstellung level.
Sofern tracealle Kategorien aktiviert sind: Deaktivierte Bereiche können ausführliche Socket- oder WebSocket-Nachrichten unterdrücken. Überprüfen Sie die Filterliste.
Sie suchen am falschen Ort: Journal, Container-Ausgabe und eine Datei sind unterschiedliche Protokollspeicher. Ermitteln Sie, welcher Speicher aktiv ist, bevor Sie eine leere Datei analysieren.
Protokollierung aktiviert: Umfangreiche Protokollierung kann schnell anwachsen und mehr Betriebsdetails offenlegen. Stellen Sie den vorherigen Wert wieder her, sobald der Test abgeschlossen ist.
Wenn man mehrere Einstellungen gleichzeitig ändert, wird es schwieriger festzustellen, welche Einstellung das Ergebnis beeinflusst hat. Ändern Sie einen Wert, reproduzieren Sie einen Fehler und dokumentieren Sie das Ergebnis.