Skip to content

Monitoring System Health


What to Monitor

Web Server

Metric Recommended Threshold Tool
CPU utilisation Alert above 80% sustained Windows Task Manager, hosting provider dashboard
Memory (RAM) Alert above 85% sustained Windows Task Manager, Performance Monitor
Disk space Alert below 10% free Windows Explorer, hosting provider dashboard
IIS Application Pool state Alert if stopped IIS Manager, hosting provider alerts
HTTP availability (site up/down) Alert on any downtime External uptime monitor (see below)

Database Server

Metric Recommended Threshold Tool
SQL Server service state Alert if stopped SQL Server Configuration Manager
Database size growth Alert if approaching disk limit SSMS → database properties
Backup job status Alert on failure SQL Server Agent job history
Index fragmentation Review monthly SSMS or automated maintenance plan

Application-Level Monitoring

Error Table

The Errors table in conprosoft_bmhcrp is the primary application log. Check it regularly:

-- Count errors in the last 24 hours
SELECT COUNT(*) AS ErrorCount FROM Errors
WHERE ErrorID IN (
  SELECT TOP 1000 ErrorID FROM Errors ORDER BY ErrorID DESC
)

A sudden spike in errors indicates a problem requiring investigation.

Windows Event Log

  • Event Viewer → Windows Logs → Application — review for ASP.NET warnings and errors.
  • Event Viewer → Windows Logs → System — review for IIS service events and Application Pool crashes.

For external availability monitoring (checks if the login page is reachable from outside the network):

Tool Cost Notes
UptimeRobot Free tier available Simple HTTP checks, email/SMS alerts
Better Uptime Free tier available HTTP checks, incident management
Hosting provider built-in monitoring Varies Check what the hosting provider offers

Configure a check against the CONPROSOFT login URL (e.g. https://bmh-crp.co.za/login). Set alerts to notify IT or the client when the site is unreachable for more than 2 minutes.


Backup Job Monitoring

  • SQL Server Agent backup jobs should be reviewed weekly.
  • In SSMS: SQL Server Agent → Jobs — check Last Run Outcome for each backup job.
  • Set up SQL Server Agent alerts or job notifications to email the DBA/IT contact on failure.

Monitoring should cover:

1. Infrastructure

  • Web Server

    • CPU, memory, and disk utilisation.
    • IIS Application Pool uptime and recycle events.
  • Database Server

    • CPU, IO, and memory usage.
    • Database size and growth trends.

2. Application

  • Application error logs (custom or framework-provided).
  • Windows Event Logs for ASP.NET and IIS warnings/errors.
  • Scheduled task failures (if scheduling is in use).

3. Availability & Performance

  • Ping/HTTP checks to confirm site is up.
  • Response time measurements for key pages.

4. Backups & Jobs

  • Status of database backups.
  • Status of any scheduled application-level jobs.

Tools may include:

  • Hosting provider monitoring tools.
  • Third-party services (e.g. uptime monitors).
  • SIEM solutions, where deployed.

Define thresholds and escalation procedures here.