Skip to content

feat: add local activity logging backend - #80

Merged
TuNi02 merged 2 commits into
masterfrom
features/tuni02/78/logging-backend
Oct 28, 2026
Merged

TuNi02 merged 2 commits into
masterfrom
features/tuni02/78/logging-backend

Conversation

@TuNi02

@TuNi02 TuNi02 commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

Zusammenfassung

Sortify erhält ein UI-unabhängiges Backend für lokale Protokollierung. Strukturierte Ereignisse können persistent gespeichert und für eine spätere Anzeige gelesen werden. Logging-Ausfälle beeinflussen die Ergebnisse der eigentlichen Backend-Vorgänge nicht.

Die App-Anbindung und Anzeige sind ausdrücklich ein Folgeauftrag für Manuel. Dieser PR ändert keine Dateien unter Sortify.App; ohne Anbindung werden im laufenden Programm noch keine Logs geschrieben.

Verknüpftes Issue

Closes #78

Änderungen

  • Core-Vertrag IActivityLog mit UTC-Zeitstempel, Schweregrad, Ereigniskennung, Nachricht und strukturiertem Leseergebnis ergänzen.
  • UTF-8-JSONL-Dateien im lokalen Sortify-Log-Ordner speichern; standardmäßig maximal 1 MiB je Datei und drei rotierende Archive.
  • Letzte Einträge in umgekehrter Schreibreihenfolge lesen; beschädigte Zeilen zählen und überspringen, Speicherfehler melden.
  • Gleichzeitige Zugriffe innerhalb eines Prozesses synchronisieren und Eintrags-/Lesegrößen begrenzen.
  • Dekoratoren für Dateioperationen, Einstellungsablage und Regelauswertung sowie optionales Logging im FolderMonitor ergänzen.
  • Originalergebnisse und Exceptions erhalten; auch Fehler eines ausgetauschten Loggers isolieren. Automatische Nachrichten enthalten keine vollständigen Pfade, Dateinamen, Dateiinhalte oder Einstellungswerte.
  • Übergabe an Manuel einschließlich Anbindungsbeispiel, Ereignissen und Betriebsgrenzen in docs/logging-backend.md dokumentieren.

Verifikation

  • dotnet build Sortify.sln --configuration Release --no-restore — keine Warnungen oder Fehler
  • dotnet test Sortify.sln --configuration Release --no-build --no-restore — 411 erfolgreich (237 Core, 107 Infrastructure, 67 App)
  • Neun gezielte Backend-Tests: Parallelität, Persistenz, Rotation, beschädigte Zeilen, Speicherfehler und Wiederherstellung, echte Dateioperationen, fehlende Bestätigung, Abbruch, Logger-Ausfälle, Einstellungen, Überwachung und Regelauswertung
  • git diff --check
  • Manuell in der laufenden App geprüft — noch nicht anwendbar: App-Anbindung erfolgt separat durch Manuel; echte Dateioperationen sind automatisiert geprüft

Screenshots

Nicht zutreffend — ausschließlich Backend, keine UI-Änderungen.

Checkliste

  • Branch-Name entspricht der Sortify-Konvention
  • Änderung gehört vollständig zum verknüpften Issue
  • Tests wurden ergänzt
  • Dokumentation wurde aktualisiert
  • Keine vertraulichen Daten oder persönlichen lokalen Pfade committed; Testpfade werden temporär erzeugt

@TuNi02
TuNi02 merged commit 971c625 into master Oct 28, 2026
4 checks passed
@TuNi02
TuNi02 deleted the features/tuni02/78/logging-backend branch October 28, 2026 14:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Task]: Backend für lokale Protokollierung implementieren

2 participants