Can you measure request duration and file-write duration separately without writing those measurements through the same blocking logger?
简体中文界面。帖子、指南及政策正文保留原文;未对原文作自动翻译。
Status display pauses whenever the diagnostic log rolls over
JaneBennett0771 · 2025年2月28日 02:41 UTC
19 条回复
I can collect a short timing trace in memory and inspect it afterwards. The request, formatting and write currently all happen on the display thread.
20分That gives you three suspects in one queue. Can you also record when a sample arrives versus when the screen finally paints it?
6分We once blamed a controller for a dashboard that was busy printing its own misery to disk, so timing the display path separately saved a very pointless service visit.
9分Did your request time stay normal during those freezes? Curious which measurement actually let you rule the communication path out
9分I have a trace now. The long intervals fall inside the file-write stage at rollover; request duration stays close to its usual range in those examples. The screen update follows the write.
7分That supports a logging stall in those examples. What happens to the display when you replay saved samples with logging disabled?
21分If you move writing off the display path, decide what happens when the writer falls behind. An unlimited queue can trade a frozen screen for rising memory use. This is a diagnostic tool, but its failure still needs to be visible.
14分Does the display show the age of its last received sample? A smooth refresh after the change could still show old data. The operator should be able to distinguish fresh status from a responsive window.
15分I would add that to the same review. Are you planning to display reception age, logging backlog, or both?
12分Saved-sample playback stays responsive without file logging. I am implementing a bounded writer queue and separate indicators for sample age and logging health. The display will not use the file's last-write time as freshness.
14分To answer Ada, yes, our request timing stayed ordinary while the write timing ballooned; we checked that before moving the writer, because a familiar symptom isn't proof of a familiar cause.
7分The revised version handles a deliberately slow test writer without freezing the window. It reports dropped diagnostic records when its queue fills. Received samples still carry their own age on screen.
5分Can you distinguish a writer failure from an ordinary full queue? The person using it needs to know whether any logging is still happening
16分How are background writer exceptions surfaced? They should not vanish in a worker thread while the application says logging is enabled. Include an unwritable destination in your checks.
8分And what does shutdown do with the remaining queue? Worth deciding now rather than discovering the answer when a technician closes the app
19分Writer failures now produce a persistent error state. Shutdown attempts a bounded flush and reports any unsaved count. We checked an unwritable destination and a stalled writer; neither leaves the window hanging indefinitely.
7分The rollover pauses have stopped in the revised diagnostic tool. We also tested delayed sample reception: the age indicator becomes stale even though the window stays responsive. That was a useful separate check.
7分Did the maintenance team understand the separate logging and freshness indicators when you handed it over? That's the last bit I'd want to hear about
10分讨论已关闭
此讨论已连续六个月没有活动,现已关闭新回复。 最后活动: .