Good Day Everyone!
We’re having trouble with the /alerts page showing “No results found!”, which we noticed earlier at midnight. The notifications also suddenly stopped. However, /alert-log still seems to load just fine.
I did the ff:
- Ran “./daily.sh” multiple times but did not work
- Checked librenms.log under librenms directory and found this 2 query errors related to alerts ( hoping this was the cause ).
[2025-06-18T11:12:02][ERROR] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'alert_rules.rule' in 'field list' (Connection: dbFacile, SQL: SELECT alert_log.id,alert_log.rule_id,alert_log.device_id,alert_log.state,alert_log.details,alert_log.time_logged,alert_rules.rule,alert_rules.severity,alert_rules.extra
,alert_rules.name,alert_rules.query,alert_rules.builder,alert_rules.proc FROM alert_log,alert_rules WHERE alert_log.rule_id = alert_rules.id && alert_log.device_id = 230 && alert_log.rule_id = 1 && alert_rules.disabled = 0 ORDER BY alert_log.id DESC LIMIT 1)#0 /opt/librenms/LibreNMS/Alert/RunAlerts.php(445): dbFetc
hRow()
#1 /opt/librenms/LibreNMS/Alert/RunAlerts.php(478): LibreNMS\Alert\RunAlerts->loadAlerts()
#2 /opt/librenms/alerts.php(61): LibreNMS\Alert\RunAlerts->runAlerts()
#3 {main}
[2025-06-18T11:13:16][ERROR] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'alert_rules.rule' in 'field list' (Connection: dbFacile, SQL: SELECT `alerts`.*, IFNULL(CONVERT_TZ(`alerts`.`timestamp`, @@global.time_zone, Asia/Shanghai),`alerts`.`timestamp`) AS timestamp_display, `devices`.`hostname`, `devices`
.`sysName`, `devices`.`display`, `devices`.`os`, `devices`.`hardware`, `locations`.`location`, `alert_rules`.`rule`, `alert_rules`.`name`, `alert_rules`.`severity` FROM `alerts` LEFT JOIN `devices` ON `alerts`.`device_id`=`devices`.`device_id` LEFT JOIN `locations` ON `devices`.`location_id` = `locations`.`id` RIGHT JOIN `alert_rules` ON `alerts`.`rule_id`=`alert_rules`.`id` WHERE `devices`.`disabled` = 0 AND `alerts`.`state`!=0 ORDER BY timestamp DESC LIMIT 0,50)#0
/opt/librenms/includes/html/table/alerts.inc.php(131): dbFetchRows()
#1 /opt/librenms/html/ajax_table.php(45): include_once('...')
#2 {main}
I checked the alert_rules tables and there’s no column “rule” as it was removed during the migration 2025_06_11_173916_drop_alert_rule.php
./validate.php result
Component | Version |
---|---|
LibreNMS | 25.6.0-7-g581c30683 (2025-06-18T10:05:30+08:00) |
DB Schema | 2025_06_11_173916_drop_alert_rule (344) |
PHP | 8.3.21 |
Python | 3.8.10 |
Database | MariaDB 10.5.11-MariaDB-1:10.5.11+maria~bionic |
RRDTool | 1.7.2 |
SNMP | 5.8 |
=========================================== |
[OK] Composer Version: 2.8.9
[OK] Dependencies up-to-date.
[OK] Database Connected
[OK] Database Schema is current
[OK] SQL Server meets minimum requirements
[OK] lower_case_table_names is enabled
[OK] MySQL engine is optimal
[OK] Database and column collations are correct
[OK] Database schema correct
[OK] MySQL and PHP time match
PHP Error(2): stream_socket_client(): Unable to connect to tcp://127.0.0.1:6379 (Connection refused) from vendor/predis/predis/src/Connection/Resource/StreamFactory.php:209 in /opt/librenms/LibreNMS/Validations/Poller/CheckRedis.php:67
[OK] Active pollers found
[OK] Dispatcher Service not detected
[OK] Locks are functional
[OK] Python poller wrapper is polling
[OK] Redis is unavailable
[OK] rrdtool version ok
[OK] Connected to rrdcached