The Foglight rule “DBSS - SQL I/O Errors” raises an alarm when SQL Server reports one or more I/O errors. Customers may observe alarms with messages such as:
"SQL I/O Errors. X I/O errors have been encountered. Please check SQL Server log."
This article explains what this rule monitors, whether it detects specific SQL Server or Windows Event IDs (e.g., Event ID 833), and how the threshold works.
This rule is triggered when SQL Server reports disk I/O errors during Foglight’s data collection cycle. These errors generally indicate that SQL Server was unable to read from or write to disk due to a hardware or system-level failure. Examples include:
Failed write attempts to database or log files
OS-level disk or controller issues
Hardware faults that interrupt disk I/O
The rule does not monitor SQL Server performance warnings such as:
Event ID 833: SQL Server has encountered I/O requests taking longer than 15 seconds to complete...
The rule also does not monitor specific Windows or SQL Server Event IDs directly. Instead, it uses internal SQL Server error counters to detect I/O failures.
#sql_io_errors#
, which tracks the number of new SQL Server I/O errors detected since the previous collection. This metric comes from SQL Server as the result of SELECT @@TOTAL_ERRORS; as described in the Microsoft documentation here.These SQL Server errors may generate related entries in the Windows Event Log (e.g., Event ID 17053 for write failures), but the rule does not detect or filter by specific Event IDs.
0.5
) are invalid and may lead to unpredictable behavior.1
to trigger an alarm on any I/O error.To monitor specific SQL Server or Windows Event IDs, consider:
sys.dm_io_virtual_file_stats
for average I/O stall times© ALL RIGHTS RESERVED. Terms of Use Privacy Cookie Preference Center