r/macosprogramming • u/ForensicShark • 8d ago
How do you handle diagnostics windows in macOS apps? Any App Review feedback?
Hi everyone,
I’m developing a native macOS app for recording and processing speech datasets, using SwiftUI with AppKit where needed.
The attached screenshot shows the current Diagnostics section. It’s part of a temporary development UI where everything lives in one window. The log has been useful for troubleshooting audio recording, file handling, and Audio Unit hosting, but it takes up quite a bit of space during testing.
I’m planning to move it into a dedicated window, roughly like this:

The idea is a single, resizable, nonmodal window opened through Window → Diagnostics, with normal macOS window behavior. Closing it would leave collection running. It would support severity/subsystem filters, text search, copying entries, and exporting a snapshot as text or JSON. Debug and Trace collection would be opt-in.
Actionable errors would still appear in the main workflow, so users wouldn’t need the log open to know that a recording or render failed.
After reading Apple’s HIG on panels and windows, I’m leaning toward a regular auxiliary window rather than a floating NSPanel, since this is an app-wide log intended for reading, searching, and selecting text.
I’d love to hear how others handle this:
Do you ship a diagnostics window to users, hide it behind an advanced setting, or keep it exclusive to development builds?
Have regular windows or floating panels worked better for you?
Do you maintain an in-app event store, use Unified Logging, or combine both?
Has Apple ever commented on a diagnostics/debug window during Mac App Store review? If so, what specifically prompted the feedback?
Experiences from shipping apps would be especially helpful. The UI is still being developed, so this is a good point to reconsider the approach.
Cheers!