IT operations · Software engineering
Unified IT Operations Dashboard
Bringing infrastructure oversight and audit reporting into one application.
01 · Challenge
The problem
Daily infrastructure checks and audit preparation involved moving between several administrative tools and assembling reports manually.
For antivirus audit reporting, we previously had to log in to approximately 105 desktops to collect the required information. Those reports showed the state of each machine when it was checked; we did not have a central history that we could query for a previous reporting period.
Active Directory evidence involved running PowerShell commands to retrieve group membership and access information, then preparing spreadsheets before audits. Certificate-expiry tracking relied on calendar reminders. Host health checks and backup reviews also required separate checks across the environment.
I wanted to bring these recurring tasks into an application shaped around how our IT team actually worked.
02 · Ownership
My responsibility
I designed and coded the entire solution and continue to maintain it.
The application began as my Go learning project. Over approximately 18 months of development, I built it into a production tool covering service monitoring, Active Directory, Windows Defender, Horizon View, Veeam and VMware.
My work covered the backend, server-rendered interface, PostgreSQL data storage, WebSocket updates, monitoring schedules, reporting and notification workflows. The application has been in production since June 2023.
03 · Approach
Infrastructure oversight in one place.
| Area | Scope or outcome |
|---|---|
| Antivirus audit reporting | Report exports in seconds; previously required manual checks across approximately 105 desktops |
| VMware oversight | 16 ESXi hosts across three sites |
| VM checks | Approximately 350 VMs checked every 24 hours for disk-space and hardware issues |
| Active Directory reporting | Two domains and four domain controllers |
| Backup visibility | Two Veeam servers covering approximately 150 VM backups |
| Certificate alerts | Notifications at 30 and 15 days before expiry |
Service availability and certificate monitoring
The monitoring module checks HTTP, HTTPS, ping availability and SSL certificate expiry for registered hosts. Individual checks can be selected and scheduled per host according to the service's requirements.
Critical services can generate SMS notifications through AWS End User Messaging. Certificate notifications are issued at 30 and 15 days before expiry, replacing the calendar reminders previously used to track renewals.
Active Directory reporting for operations and audits
The Active Directory module consolidates information from two domains and four domain controllers. It provides views of users, computers, groups and account status, alongside reports covering group membership, access information, logons, directory objects and Group Policy.
These reports support both routine administration and ISMS audit evidence requests. Information that previously required PowerShell commands and pre-audit spreadsheet preparation can now be shown directly to the reviewer.
Centralised antivirus reporting and threat notifications
The Defender module brings antivirus status and reported threats into a shared view for the IT team.
Daily antivirus reports are stored in PostgreSQL. This provides a historical record as well as current reporting, allowing the team to export information for a requested period in seconds.
The application also checks daily for threats reported on desktops and triggers an email with the details when a threat is found. This gives the team central visibility and information for investigation and response.
Horizon View operations
The Horizon View module brings active sessions, VDI desktops, events, settings and monitoring information into a customised view based on the team's operational requirements.
It places VDI information alongside the infrastructure and service views used during day-to-day administration.
Veeam backup oversight
The backup module consolidates status from two Veeam servers, covering approximately 150 VM backups.
The team can review running jobs, jobs with issues, disabled jobs, protected objects, repositories and VMs identified as unprotected from one location. Detailed reports cover backup objects, jobs, managed servers, proxies, repositories, restore points and sessions.
This provides a consistent way to review backup status and investigate protection gaps across the team's environment.
VMware host and VM health
The VMware module gives the team a central view of 16 ESXi hosts across three sites, supporting daily host health checks without logging in to each host separately.
It includes host, VM and datastore details, snapshots, powered-off VMs, disk-space issues, hardware issues and system-health information.
Checks for disk-space and hardware issues across approximately 350 VMs run every 24 hours. WebSockets support interface updates, while the freshness of individual readings depends on each collector's schedule.
04 · Outcome
Audit reports in seconds, with historical evidence.
The clearest improvement is antivirus audit reporting. A process that required manually checking approximately 105 desktops now produces report exports in seconds. Storing daily reports also makes historical evidence available, rather than relying only on point-in-time checks.
Active Directory evidence can be presented directly during audits, reducing the need to assemble spreadsheets beforehand. Host health and backup status can be reviewed centrally, and certificate notifications provide advance notice at defined points before expiry.
For the four-person IT team, the application brings recurring checks and reporting tasks into one maintained tool. For me, it developed from a practical way to learn Go into a production application that combines software development with the infrastructure work I continue to perform.
Technology
Tools chosen for the job.
- Go
- Go HTML templates
- PostgreSQL
- WebSockets
- Progressive Web App (PWA)
- AWS End User Messaging for SMS alerts
- Active Directory
- Windows Defender
- VMware Horizon View
- Veeam Backup & Replication
- VMware vSphere