mirror of
https://github.com/okieselbach/AutopilotMonitor.git
synced 2026-10-24 12:42:38 +00:00
f358d8ebd901771e2517da2aa87bbd9e52515267
app install metrics platform stats global gather and analyze rule editng Dark mode (needs improvement) UI enhancments
Autopilot Monitor
Advanced monitoring and troubleshooting solution for Windows Autopilot deployments.
Overview
Autopilot Monitor provides real-time tracking, intelligent diagnostics, and automated troubleshooting for Windows Autopilot enrollment processes. It consists of:
- Bootstrap Script - PowerShell script deployed via Intune that starts monitoring early in the enrollment process
- Monitoring Agent - Lightweight .NET Windows Service that collects telemetry and evidence
- Backend API - Azure Functions-based ingestion and processing pipeline
- Web Dashboard - Next.js application for real-time monitoring and fleet analytics
Architecture
Device Side Azure Backend Web UI
┌──────────────┐ ┌──────────────┐ ┌──────────┐
│ Bootstrap │──deploys──▶ │ │ │ │
│ Script │ │ Azure │◀───────────▶ │ Next.js │
└──────┬───────┘ │ Functions │ │ Web App │
│ │ │ │ │
▼ │ • Ingest │ └──────────┘
┌──────────────┐ │ • Store │
│ Monitoring │──telemetry──▶ │ • Analyze │
│ Agent │ (mTLS) │ │
└──────────────┘ └──────┬───────┘
│
▼
┌──────────────┐
│ Azure Table │
│ Azure Blob │
│ Azure SQL │
└──────────────┘
Project Structure
Autopilot-Monitor/
├── src/
│ ├── Agent/ # .NET monitoring agent
│ │ ├── AutopilotMonitor.Agent/ # Windows Service host
│ │ └── AutopilotMonitor.Agent.Core/ # Core monitoring logic
│ ├── Backend/ # Azure Functions
│ │ └── AutopilotMonitor.Functions/
│ ├── Shared/ # Shared models/contracts
│ │ └── AutopilotMonitor.Shared/
│ └── Web/ # Frontend
│ └── autopilot-monitor-web/
├── scripts/
│ ├── Bootstrap/ # Intune deployment scripts
│ └── Deployment/ # Azure deployment scripts
├── rules/ # YAML rule definitions
└── docs/ # Documentation
Phase 1 Goals (Current)
- Project structure setup
- Bootstrap PowerShell script
- Basic .NET agent with log tailing
- Azure Functions ingestion API
- Session registration and event storage
- Minimal web UI (session list, timeline)
Getting Started
Prerequisites
- .NET Framework 4.8 SDK (for Agent)
- .NET 8 SDK (for Azure Functions)
- Node.js 18+ (for Web UI)
- Azure subscription
- Visual Studio 2022 or VS Code
Development Setup
-
Clone and restore packages
git clone <your-repo> cd Autopilot-Monitor dotnet restore -
Set up local Azure Functions
cd src/Backend/AutopilotMonitor.Functions cp local.settings.json.template local.settings.json # Edit local.settings.json with your Azure Storage connection string -
Set up web frontend
cd src/Web/autopilot-monitor-web npm install cp .env.local.template .env.local # Edit .env.local with your API endpoint -
Build the agent
cd src/Agent/AutopilotMonitor.Agent dotnet build
Running Locally
-
Start Azure Functions (in one terminal)
cd src/Backend/AutopilotMonitor.Functions func start -
Start Web UI (in another terminal)
cd src/Web/autopilot-monitor-web npm run dev -
Test agent (as Administrator)
cd src/Agent/AutopilotMonitor.Agent/bin/Debug .\AutopilotMonitor.Agent.exe --console
Documentation
Contributing
We welcome community contributions! See CONTRIBUTING.md for guidelines.
License
MIT License - see LICENSE for details
Roadmap
Phase 1: Foundation (Current)
- Bootstrap and basic agent
- Simple ingestion pipeline
- Minimal UI
Phase 2: Intelligence
- Rule engine
- Diagnosis panel
- Troubleshooting bundles
Phase 3: Polish
- Fleet dashboard
- User-facing portal
- Multi-tenant support
Phase 4: Advanced
- Pre-provisioning support
- Custom rule authoring
- Integration APIs
Description
Windows Autopilot & Intune enrollment monitoring: live session timelines, fleet health, diagnostics, and an MCP server for AI-assisted troubleshooting.
autopilotdevice-managementdevice-provisioningendpoint-managementenrollmentintunemcp-servermonitoringmsintuneoobetroubleshootingwindowswindows-autopilot
Readme
AGPL-3.0
60 MiB
Languages
C#
72.7%
TypeScript
25.7%
PowerShell
1%
JavaScript
0.5%