← Selected work

IT operations · Software engineering

Unified IT Operations Dashboard

Bringing infrastructure oversight and audit reporting into one application.

SecondsAV report exports
18 monthsApproximate development
4IT team users
Jun 2023In production since

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.

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.

Infrastructure oversight in one place.

At a glance
AreaScope or outcome
Antivirus audit reportingReport exports in seconds; previously required manual checks across approximately 105 desktops
VMware oversight16 ESXi hosts across three sites
VM checksApproximately 350 VMs checked every 24 hours for disk-space and hardware issues
Active Directory reportingTwo domains and four domain controllers
Backup visibilityTwo Veeam servers covering approximately 150 VM backups
Certificate alertsNotifications 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.

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