Skip to content

Logs sammeln ​

Wenn Sie einen Fehlerbericht einreichen, gibt ein Log-Bundle den Maintainern die Informationen, die sie zur Diagnose des Problems benoetigen, ohne mehrfaches Nachfragen.

Schnell-Bundle ​

Der schnellste Weg, ein Log-Bundle zu erstellen:

bash
triggerfish logs bundle

Dies erstellt ein Archiv mit allen Log-Dateien aus ~/.triggerfish/logs/:

  • Linux/macOS: triggerfish-logs.tar.gz
  • Windows: triggerfish-logs.zip

Wenn die Archivierung aus irgendeinem Grund fehlschlaegt, wird auf das Kopieren der rohen Log-Dateien in ein Verzeichnis zurueckgegriffen, das Sie manuell zippen koennen.

Was das Bundle enthaelt ​

  • triggerfish.log (aktuelle Log-Datei)
  • triggerfish.1.log bis triggerfish.10.log (rotierte Backups, falls vorhanden)

Das Bundle enthaelt nicht:

  • Ihre triggerfish.yaml-Konfigurationsdatei
  • Geheime Schluessel oder Anmeldedaten
  • Die SQLite-Datenbank
  • SPINE.md oder TRIGGER.md

Manuelle Log-Sammlung ​

Wenn der Bundle-Befehl nicht verfuegbar ist (aeltere Version, Docker, etc.):

bash
# Log-Dateien finden
ls ~/.triggerfish/logs/

# Archiv manuell erstellen
tar czf triggerfish-logs.tar.gz ~/.triggerfish/logs/

# Docker
docker cp triggerfish:/data/logs/ ./triggerfish-logs/
tar czf triggerfish-logs.tar.gz triggerfish-logs/

Log-Detail erhoehen ​

Standardmaessig sind Logs auf INFO-Level. Um mehr Details fuer einen Fehlerbericht zu erfassen:

  1. Log-Level auf verbose oder debug setzen:

    bash
    triggerfish config set logging.level verbose
    # oder fuer maximale Details:
    triggerfish config set logging.level debug
  2. Das Problem reproduzieren

  3. Das Bundle sammeln:

    bash
    triggerfish logs bundle
  4. Das Level wieder auf normal setzen:

    bash
    triggerfish config set logging.level normal

Log-Level-Details ​

LevelWas es erfasst
quietNur Fehler
normalFehler, Warnungen, Info (Standard)
verboseZusaetzlich Debug-Nachrichten (Tool-Aufrufe, Provider-Interaktionen, Klassifizierungsentscheidungen)
debugAlles einschliesslich Trace-Level-Nachrichten (rohe Protokolldaten, interne Zustandsaenderungen)

Warnung: debug-Level erzeugt viel Ausgabe. Verwenden Sie es nur, wenn Sie aktiv ein Problem reproduzieren, und wechseln Sie dann zurueck.

Logs in Echtzeit filtern ​

Waehrend Sie ein Problem reproduzieren, koennen Sie den Live-Log-Stream filtern:

bash
# Nur Fehler anzeigen
triggerfish logs --level ERROR

# Warnungen und hoeher anzeigen
triggerfish logs --level WARN

Unter Linux/macOS wird natives tail -f mit Filterung verwendet. Unter Windows wird PowerShell Get-Content -Wait -Tail verwendet.

Log-Format ​

Jede Log-Zeile folgt diesem Format:

[2026-02-17T14:30:45.123Z] [INFO] [gateway] Gateway WebSocket server started on port 18789
  • Zeitstempel: ISO 8601 in UTC
  • Level: ERROR, WARN, INFO, DEBUG oder TRACE
  • Komponente: Welches Modul den Log erzeugt hat (z.B. gateway, anthropic, telegram, policy)
  • Nachricht: Die Log-Nachricht mit strukturiertem Kontext

Was in einem Fehlerbericht enthalten sein sollte ​

Zusammen mit dem Log-Bundle fuegen Sie bei:

  1. Schritte zur Reproduktion. Was haben Sie getan, als das Problem auftrat?
  2. Erwartetes Verhalten. Was haette passieren sollen?
  3. Tatsaechliches Verhalten. Was ist stattdessen passiert?
  4. Plattform-Info. Betriebssystem, Architektur, Triggerfish-Version (triggerfish version)
  5. Konfigurationsauszug. Der relevante Abschnitt Ihrer triggerfish.yaml (Secrets schwaerzen)

Siehe Issues erstellen fuer die vollstaendige Checkliste.

Sensible Informationen in Logs ​

Triggerfish bereinigt externe Daten in Logs, indem Werte in << und >>-Begrenzer eingeschlossen werden. API-Schluessel und Tokens sollten niemals in der Log-Ausgabe erscheinen. Bevor Sie jedoch ein Log-Bundle einreichen:

  1. Pruefen Sie auf alles, was Sie nicht teilen moechten (E-Mail-Adressen, Dateipfade, Nachrichteninhalte)
  2. Schwaerzen Sie bei Bedarf
  3. Vermerken Sie in Ihrem Issue, dass das Bundle geschwaerzt wurde

Log-Dateien enthalten Nachrichteninhalte aus Ihren Gespraechen. Wenn Ihre Gespraeche sensible Informationen enthalten, schwaerzen Sie diese Teile vor dem Teilen.