Repository navigation
Managed Reports Runner App
Managed Reports Runner.exe is a WinUI 3 desktop app that ships beside the
command-line runner in every package. It shows and edits the agent's settings,
starts a collection on demand, and reads the agent's logs. It is not part of
the collection path: the scheduled tasks run managedreportsrunner.exe
directly, and the app only ever launches that same binary.
| Item | Location |
|---|---|
| App | C:\Program Files\ReportMate\Managed Reports Runner.exe |
| Its resources |
resources.pri and the Windows App SDK runtime files, in the same folder |
| Start Menu shortcut |
%ProgramData%\Microsoft\Windows\Start Menu\Programs\Managed Reports Runner.lnk, for every user |
| Startup crash log | %LOCALAPPDATA%\ReportMate\startup-crash.log |
The app is published self-contained with the Windows App SDK runtime, so it is
a folder of files rather than a single executable. It cannot load its XAML
without resources.pri; the post-install script and the release workflow both
fail when either file is missing. The space in the name keeps Tab completion of
managed… in a terminal landing on the command-line runner.
Source is under src/App/ (ReportMate.App.csproj). It shares
src/Shared/ with the runner, so both read the same registry keys, the same
credential store and the same log locations. The project is built by
build.ps1 and is not in ReportMate.sln.
The Prefs tab shows every setting from Configuration that the runner reads
from the registry: API URL, API key, passphrase, device id, collection interval,
max data age, API timeout, osquery path, storage analysis mode, debug logging,
Cimian integration, certificate validation, retry attempts, user agent and
proxy URL. Values are loaded with the runner's precedence: policy, then
HKLM\SOFTWARE\ReportMate\Settings, then the legacy keys, then defaults. The
app does not show environment variables or the YAML file.
-
Read-only until unlocked. Settings live in
HKLM, so an app that is not elevated shows them read-only. Unlock relaunches the app through UAC with--prefs, opening on this tab. Declining the UAC prompt leaves the app as it was. -
Policy wins. A setting present under
HKLM\SOFTWARE\Policies\ReportMateis locked and labelled "Managed by Policy". The app never writes it. -
Only changed values are written, to
HKLM\SOFTWARE\ReportMate\Settings. A value that came from a lower layer is not copied intoSettingsbecause a different field was edited. -
Credentials go to the protected store,
HKLM\SOFTWARE\ReportMate\Secrets, and are never displayed. Unelevated, the field asks you to unlock to see whether a value is saved; elevated, it says whether one is saved, and an empty field leaves the stored value as it is.
Some fields are stored but not acted on by the runner today. They are listed under "Values the runner accepts but does not act on" in Configuration.
The Run tab lists the ten modules with checkboxes. Run Managed Reports
Runner launches managedreportsrunner.exe --verbose elevated through UAC,
adding --run-modules <selection> when not every module is selected. With all
modules selected the run is a full collection, which is subject to the
MaxDataAgeMinutes check (see Troubleshooting).
Output is streamed by tailing the runner's log file in
C:\ProgramData\ManagedReports\logs\: the app snapshots the existing logs
before starting and follows the file the run writes to. Lines are coloured by
level, a Debug toggle shows or hides debug lines, and the exit code is shown
when the run ends. Stop kills the runner's whole process tree.
The Logs tab lists the *.log files in C:\ProgramData\ManagedReports\logs\,
shows the selected one, and filters its lines by text. The view shows the newest
matching lines up to a fixed cap and reports how many matched in total.
From the Start Menu, or from a terminal:
& 'C:\Program Files\ReportMate\Managed Reports Runner.exe'Open directly on Prefs:
& 'C:\Program Files\ReportMate\Managed Reports Runner.exe' --prefsMIT licensed. reportmate.app