„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,
|
FfmpegOptions ffmpeg,
|
||||||
Schluesselbilder schluesselbilder,
|
Schluesselbilder schluesselbilder,
|
||||||
TimeProvider clock,
|
TimeProvider clock,
|
||||||
|
Tagebuch tagebuch,
|
||||||
ILogger<Streamkoordinator> log) : IDisposable
|
ILogger<Streamkoordinator> log) : IDisposable
|
||||||
{
|
{
|
||||||
private readonly ConcurrentDictionary<Guid, Eintrag> _sitzungen = new();
|
private readonly ConcurrentDictionary<Guid, Eintrag> _sitzungen = new();
|
||||||
@@ -323,6 +324,15 @@ public sealed class Streamkoordinator(
|
|||||||
sitzung.Fehler = text.Trim();
|
sitzung.Fehler = text.Trim();
|
||||||
log.LogWarning("Strom {Kennung}: ffmpeg endete mit {Code}: {Fehler}",
|
log.LogWarning("Strom {Kennung}: ffmpeg endete mit {Code}: {Fehler}",
|
||||||
sitzung.Kennung, prozess.ExitCode, sitzung.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());
|
_ = Task.Run(() => prozess.StandardOutput.ReadToEndAsync());
|
||||||
|
|||||||
Reference in New Issue
Block a user