github erikdarlingdata/PerformanceMonitor v2.4.1

latest releases: nightly, v3.5.0, v3.4.0...
5 months ago

v2.4.1

Patch release with UX improvements and a pipeline fix.

  • Check for Updates is now a proper button instead of a hyperlink in both Dashboard and Lite About windows
  • Collector health clears stale error counts when a server is removed — status bar no longer shows errors for deleted servers
  • Velopack pipeline split into separate upload steps so Dashboard and Lite artifacts don't conflict

v2.4.0

Contributors: @HannahVernon, @MisterZeus, @ad-mca-mk — thank you!

Highlights

🔄 Auto-Update (Windows) — Both Dashboard and Lite now support automatic updates via Velopack. Install once via Setup.exe, and future updates are detected on startup with one-click download + apply. Existing zip distribution continues to work. (#635)

📊 Per-Tab Time Range Slicers — Query tabs in both Dashboard and Lite now have interactive time range slicers. Narrow down to a specific window without changing the global time range. (#655, #662)

🕐 Time Display Picker — Toggle between Local, UTC, and Server time directly from the toolbar. (#646)

Important

  • Lite data directory moved: All data (config, DuckDB, archives, logs) now lives in %LOCALAPPDATA%\PerformanceMonitorLite\ instead of alongside the executable. This enables auto-update support. Users upgrading from the zip should use Import Settings + Import Data to bring over configuration and historical data.

Added

  • Velopack auto-update for Dashboard and Lite — startup notification, download + apply from About window with confirmation dialog (#635)
  • Per-tab time range slicers on Dashboard and Lite query tabs (#655, #662)
  • Time display picker (Local/UTC/Server) in toolbars (#646)
  • Import Settings — expanded from "Import Connections" to also copy alert thresholds, SMTP config, schedules, and wait exclusions
  • Alert muting improvements — pre-fill database, query, wait type, and job name from alert detail; configurable default expiration for new mute rules (@HannahVernon) (#642)
  • Missing date columns on Query Stats and Procedure Stats tabs (#649, #651, #654)
  • Trace pattern drill-down with CollectionTime and NtUserName columns (#663)
  • DataGrid sort preservation across auto-refresh (#659)
  • CLI installer: colored output and version check on startup
  • GUI installer: version check on startup
  • Growth rate and VLF count columns in Database Sizes (upgrade script for servers that missed it in 2.3.0) (#567)
  • llms.txt and CITATION.cff for discoverability (#630)

Changed

  • Lite data directory moved to %LOCALAPPDATA%\PerformanceMonitorLite\
  • Delta gap detection on all cumulative-counter collectors — prevents chart spikes after app restart (#633)
  • File I/O NULL fallbacks when sys.master_files is inaccessible — uses DB_NAME() and File_{id} (#633)
  • Running jobs collector skipped gracefully when login lacks msdb access (#656)
  • NuGet packages updated to latest minor versions (@MisterZeus) (#653)

Fixed

  • Installer reporting SUCCESS when files fail — removed false-positive workaround from both CLI and GUI
  • Query stats collector SQL dumps on passive mirror servers — removed dm_exec_plan_attributes, uses temp table of ONLINE database IDs (#632)
  • Trigger name extraction fails when comment contains " ON " (#666)
  • FinOps expensive queries DuckDB error for missing column
  • Imported parquet files not recognized by archive compaction

Download

File Description
PerformanceMonitorDashboard-dashboard-Setup.exe New! One-click Dashboard installer with auto-update
PerformanceMonitorLite-lite-Setup.exe New! One-click Lite installer with auto-update
PerformanceMonitorDashboard-2.4.1.zip Dashboard (portable zip)
PerformanceMonitorLite-2.4.1.zip Lite (portable zip)
PerformanceMonitorInstaller-2.4.1.zip SQL Server installer (CLI + GUI + scripts)

Don't miss a new PerformanceMonitor release

NewReleases is sending notifications on new releases.