Skip to content

Logging levels, throttles and diagnostics for the DMD plugin - #3

Merged
freezy merged 2 commits into
masterfrom
feat/error-reporting
Oct 15, 2026
Merged

freezy merged 2 commits into
masterfrom
feat/error-reporting

Conversation

@freezy

@freezy freezy commented Oct 15, 2026

Copy link
Copy Markdown
Member

Part of the logging and error reporting work. It follows the level policy from freezy/VisualPinball.Engine#590: errors are for VPE bugs, and problems the user or table author can fix are warnings. What the plugin knows goes into the session diagnostics that error reports carry.

Failed frames are throttled, path probes log at debug, a device that's enabled but missing is a warning, and waiting for a DMD on a table without one is normal. The plugin describes itself for error reports: source, ROM, display, destinations, colorization and its settings, with the VNI key redacted.

Depends on freezy/VisualPinball.Engine#590 (the plugin API: IPluginLog, IDiagnosticsSource, IGamelogicStartupStatus), so merge that first.

Failed frames are throttled, path probes log at debug, a device that's enabled
but missing is a warning, and waiting for a DMD on a table without one is
normal. The plugin describes itself for error reports: source, ROM, display,
destinations, colorization and its settings, with the VNI key redacted.
@greptile-apps

greptile-apps Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[Medium impact] The reviewed changes appear safe to merge after the required host API PR lands.

Summary

Adds DMD logging levels, repeated-error limits, and session diagnostics for display sources, destinations, colorization, and settings.

  • DMD error reports now show the live display setup.
  • DMD logs distinguish normal waits from problems users can fix.
  • Repeated DMD failures now produce fewer log messages.

Reviews (2) · Last reviewed commit: "logging: Throttle failures per pipeline ..." · Reviewed by Greptile

Comment thread VisualPinball.Engine.DMD.Unity/Runtime/DmdPipeline.cs Outdated
One failing display no longer uses up another one's first errors.
@freezy
freezy merged commit eba9a35 into master Oct 15, 2026
5 checks passed
@freezy
freezy deleted the feat/error-reporting branch October 15, 2026 19:34
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.

1 participant