Log debug output only in builds with debugSymbolsAndLogs
On master, easylogging's Debug level was disabled unless OVRAS was built with debugSymbolsAndLogs (ENABLE_DEBUG_LOGGING). The qt6 branch switched to qDebug() and lost that: debugLoggingEnabled was left unused, and all debug output reached the log. On the Steam Frame it filled with "updateAllPulseData done." about every 11 ms, as the audio tab reads the microphone's mute state on every tick. setUpLogging() now disables debug output through a logging filter rule. QT_LOGGING_RULES="*.debug=true" takes precedence and turns it on again for troubleshooting without a rebuild. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -234,6 +234,38 @@
|
||||
(`steam://` URL) → own app key needed (option 2); our working directory and binary →
|
||||
enough.
|
||||
|
||||
**Result on the Frame (2026-10-07, deploy with `ec82b5f`):** SteamVR accepts our manifest
|
||||
(no error) but keeps using Steam's entry for the key:
|
||||
`source: "steam" launch type: "url" working dir: PropertyNotSet binary: PropertyNotSet
|
||||
URL: "steam://launch/1009850/openvroverlay" auto-launch: true`.
|
||||
- **Consequence:** the native build needs its own app key (option 2, DESIGN.md 2a,
|
||||
follow-up). Design pending.
|
||||
- **Side effect:** `--force-install-manifest` switched auto-launch on for Steam's key. At the
|
||||
next SteamVR start, SteamVR may launch `steam://launch/1009850` (the uninstalled Steam
|
||||
version). To be switched off again.
|
||||
- OVRAS itself was started by `install.sh` and keeps running (not yet checked in the
|
||||
dashboard, T2).
|
||||
|
||||
### Fix: debug output only with debugSymbolsAndLogs (2026-10-07)
|
||||
|
||||
- **Problem:** the log filled with `[D] updateAllPulseData done.` about every 11 ms (8399
|
||||
lines in 6 s). `AudioTabController::eventLoopTick()` reads the microphone's mute state on
|
||||
every tick, and every read calls `updateAllPulseData()`
|
||||
(`AudioManagerPulse_internal.h:312`).
|
||||
- **Cause (regression in `qt6`):** on `master` the message was easylogging's `LOG(DEBUG)`,
|
||||
and the Debug level was disabled unless built with `debugSymbolsAndLogs`
|
||||
(`ENABLE_DEBUG_LOGGING`). `qt6` switched to `qDebug()` and lost that; the constant
|
||||
`debugLoggingEnabled` in `setup.cpp` was left unused, so all 46 `qDebug()` calls were
|
||||
always active.
|
||||
- **Fix (`setup.cpp`, `setUpLogging()`):** without `ENABLE_DEBUG_LOGGING`,
|
||||
`QLoggingCategory::setFilterRules("*.debug=false")`. `QT_LOGGING_RULES="*.debug=true"`
|
||||
takes precedence and turns debug output on again without a rebuild.
|
||||
- **Result:** cross build and package succeed, `Qt_6_PRIVATE_API` without `QVulkan*`: 0.
|
||||
- **Not tested yet:** on the Frame (log without `[D]` lines; with `QT_LOGGING_RULES` with
|
||||
them).
|
||||
- **Open for R6/T10:** each tick makes three synchronous PulseAudio queries (server info,
|
||||
all sinks, all sources) for the mute state. Not changed now.
|
||||
|
||||
### Test checklist on the Frame (step 5)
|
||||
|
||||
Deploy: `build_scripts/steamframe/deploy-to-frame.sh <user>@<frame>` (SteamVR running).
|
||||
|
||||
Reference in New Issue
Block a user