"action_name": "MSSQL Fetch Failure Alert", "conditions": "trigger_name": "MSSQL: Failed to fetch info data OR no data for 30m", "trigger_severity": ["high", "disaster"] , "operations": "default_subject": "CRITICAL: MSSQL data fetch failed on HOST.NAME", "default_message": "Problem started at EVENT.TIME on EVENT.DATE\n Problem name: TRIGGER.NAME\n Host: HOST.NAME\n Severity: TRIGGER.SEVERITY\n\n Original event ID: EVENT.ID\n Check MSSQL connectivity:\n 1. Verify SQL Server is running\n 2. Check firewall rules\n 3. Validate credentials in Zabbix configuration\n 4. Review SQL error logs\n\n Last 5 fetch attempts: ITEM.VALUE<ms.sql[fetch_data],5>", "recovery_subject": "RECOVERY: MSSQL fetch restored on HOST.NAME", "recovery_message": "Problem resolved at EVENT.RECOVERY.TIME\n Duration: EVENT.DURATION\n Host: HOST.NAME"
This paper outlines the four primary failure points: Network/Timeouts, Authentication/Permissions, PowerShell Execution Policy, and ODBC Driver architecture mismatches.
Using the same DSN, username and password as the isql test fails in Zabbix with the following error: Cannot connect to ODBC DSN: [
Performance counters are fragile (localization, missing objects). For critical metrics, use db.odbc.select with custom T-SQL.
If this returns $null , the service account cannot read DMVs.
Problem: MSSQL: Failed to fetch info data (or no data for 30m)
| Error Message | Zabbix Interpretation | Typical Impact | |---------------|----------------------|----------------| | | The item’s pre-processing or retrieval script returned non-zero exit code or error output. | Immediate data loss for that poll. | | No data for 30m | The item has not received any new value for the last 30 minutes (configured in zabbix_server.conf or item’s update interval). | Sustained monitoring outage. |