„Die Einzelheiten stehen im Protokoll von heute" — standen sie nicht
Der Spieler verweist bei einer gescheiterten Wiedergabe aufs Tagesprotokoll. Dort stand nichts: `ILogger` landet in den Container-Ausgaben, und das Tagebuch ist eine eigene Datei, in die nur Scan, Wartung und unbehandelte Ausnahmen schreiben. Der Hinweis war eine Sackgasse — gemessen an einem Protokoll, das einen ganzen Tag Betrieb mit vier Zeilen Start und Ende wiedergab, während eine Wiedergabe mit 500 abgebrochen war. Jetzt geht der ffmpeg-Fehler auch dorthin. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
6ef84b47cf
commit
34ade18ed6
@@ -63,6 +63,7 @@ public sealed class Streamkoordinator(
|
||||
FfmpegOptions ffmpeg,
|
||||
Schluesselbilder schluesselbilder,
|
||||
TimeProvider clock,
|
||||
Tagebuch tagebuch,
|
||||
ILogger<Streamkoordinator> log) : IDisposable
|
||||
{
|
||||
private readonly ConcurrentDictionary<Guid, Eintrag> _sitzungen = new();
|
||||
@@ -323,6 +324,15 @@ public sealed class Streamkoordinator(
|
||||
sitzung.Fehler = text.Trim();
|
||||
log.LogWarning("Strom {Kennung}: ffmpeg endete mit {Code}: {Fehler}",
|
||||
sitzung.Kennung, prozess.ExitCode, sitzung.Fehler);
|
||||
|
||||
// **Auch ins Tagesprotokoll, nicht nur in die Konsole.** Die
|
||||
// Fehlermeldung im Spieler verweist aufs Protokoll von heute —
|
||||
// und dort stand nichts, weil `ILogger` in den Container-Ausgaben
|
||||
// landet und das Tagebuch eine eigene Datei ist. Der Hinweis war
|
||||
// damit eine Sackgasse.
|
||||
tagebuch.Schreiben(
|
||||
$"Wiedergabe gescheitert: ffmpeg endete mit {prozess.ExitCode}. {sitzung.Fehler}",
|
||||
Tagebuch.Art.Fehler);
|
||||
});
|
||||
|
||||
_ = Task.Run(() => prozess.StandardOutput.ReadToEndAsync());
|
||||
|
||||
Reference in New Issue
Block a user