← Portfolio

ATLAS Monitoring

A Windows desktop watchdog that answers one question the instant ATLAS is running badly: is this the PC, ATLAS itself, or the data pipeline feeding it?

This is a native Windows desktop app (Tkinter, single window), not a web UI - unlike the two Kafka bridges above, there's no browser view of it to screenshot honestly, so this page is description only.

The problem it solves

When ATLAS lags or stutters mid-session, "is it the PC or is it ATLAS" is normally a guess. This tool watches CPU, RAM, disk, GPU and the ATLAS processes themselves, checks the machine against Motion Applied's own published Minimum/Recommended/Heavy User spec tiers, and turns what it sees into plain-language suggestions. It is a viewer first - the only part of it that writes anything is a handful of one-click optimisations on the Settings tab, each with its own backup-and-restore safety net.

What's involved

Dashboard, at a glance

System (CPU/RAM/disk), GPU, Environment & Storage, Data Pipeline (Bridge Service, Kafka, Stream API), rolling 2-minute trend graphs, per-process ATLAS detail down to the hottest single thread, and a plain-language Suggestions panel synthesising all of it.

A status light that means something

Grey/green/red, using the same Windows API Task Manager uses for "(Not Responding)". Red almost always means busy, not crashed - clicking into a blocked ATLAS window queues input and makes the backlog worse, so the tool says so.

One-click optimisations, not just diagnosis

HAGS, per-app GPU preference, ATLAS renderer mode, and SQL Race cache sizing can be applied from the Settings tab - each backed by a written-once backup of the original file so a second apply can never destroy the way back.

CSV logging that only records what's real

The column set is decided once logging starts, from a completed set of readings - a machine with no NVIDIA card or no Data Server configured simply doesn't get those columns, rather than carrying empty ones through every row.

Why it's worth trusting

The current release (v17) is a deliberate rewrite of v16 for correctness after real failure modes were found in production use - an unhandled exception could freeze the poll thread while the dashboard kept showing stale numbers looking healthy; an out-of-range setting could spin a CPU core or kill the poll thread outright; a stale Bridge-log error could sit flagged red for a fortnight after it was actually resolved. All three are fixed and covered by the 73-test suite added in the same rewrite, alongside a second discipline the tool holds itself to deliberately: it must not disturb the very machine it's diagnosing, which is why slow operations - subprocess calls, socket checks, filesystem walks - run on their own thread, separate from the live CPU/RAM sampler.

Known limitations are listed openly in the app's own README rather than glossed over - VRAM, GPU temperature and power draw aren't available on AMD/Intel GPUs, multi-GPU machines report only the first card, and the suggestions are rules of thumb, not a replacement for ATLAS's own Performance Profiler.