[ZBX-20027] [template][Cisco UCS SNMP] wrong trigger expressions for Temperature monitoring Created: 2021 Sep 29  Updated: 2022 Mar 09

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Templates (T)
Affects Version/s: 5.4.4
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: thomas Assignee: Aleksandre Sebiskveradze
Resolution: Unresolved Votes: 2
Labels: templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix installation "All In One" VM
==============================
CentOS Linux release 8.1.1911 (Core)
==============================
mariadb.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
mariadb-backup.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
mariadb-common.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
mariadb-connector-c.x86_64 3.0.7-1.el8
mariadb-connector-c-config.noarch 3.0.7-1.el8
mariadb-connector-c-devel.x86_64 3.0.7-1.el8
mariadb-devel.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
mariadb-errmsg.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
mariadb-gssapi-server.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
mariadb-server.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
mariadb-server-utils.x86_64 3:10.3.17-1.module_el8.1.0+217+4d875839
net-snmp.x86_64 1:5.8-20.el8
net-snmp-agent-libs.x86_64 1:5.8-20.el8
net-snmp-libs.x86_64 1:5.8-20.el8
zabbix-agent.x86_64 5.4.4-1.el8
zabbix-nginx-conf.noarch 5.4.4-1.el8
zabbix-server-mysql.x86_64 5.4.4-1.el8
zabbix-sql-scripts.noarch 5.4.4-1.el8
zabbix-web.noarch 5.4.4-1.el8
zabbix-web-deps.noarch 5.4.4-1.el8
zabbix-web-mysql.noarch 5.4.4-1.el8



 Description   

Trigger prototype expressions for discovery rules "Temperature CPU Discovery" and "Temperaure Discovery" and host macros should be reviewed in default "Cisco UCS SNMP" template.

 

In discovery rule "Temperature CPU Discovery", macros below are used but not defined in host macros :

$TEMP_WARN:"CPU"
$TEMP_CRIT:"CPU"
$TEMP_CRIT_LOW:"CPU"

 

In discovery rule "Temperaure Discovery" there are two issues.

First, same macros are used regardless of sensor location :

$TEMP_WARN:"Ambient" => 30°C
$TEMP_CRIT:"Ambient" => 35°C

I think these values are not appropriate to monitor IOH or server rear panel temperature. The result is that false positive problems are generated when monitoring an UCS server with default "Cisco UCS SNMP" template.

Second issue is that $TEMP_CRIT_LOW:"Ambient" is used in prototype trigger expressions but not defined in host macros.

 

MariaDB [zabbix]> SELECT m.macro, m.value FROM hosts h, hostmacro m WHERE h.hostid=m.hostid AND h.name="Cisco UCS SNMP" AND m.macro LIKE "%$TEMP%";
+------------------------+-------+
| macro                  | value |
+------------------------+-------+
| {$TEMP_CRIT:"Ambient"} | 35    |
| {$TEMP_CRIT_LOW}       | 5     |
| {$TEMP_CRIT}           | 60    |
| {$TEMP_WARN:"Ambient"} | 30    |
| {$TEMP_WARN}           | 50    |
+------------------------+-------+
5 rows in set (0.001 sec)
MariaDB [zabbix]> SELECT DISTINCT t.description,t.expression FROM triggers t,functions f,items i, hosts h WHERE h.hostid=i.hostid AND f.itemid=i.itemid AND f.triggerid=t.triggerid AND h.name="Cisco UCS SNMP" AND t.expression LIKE "%$TEMP%";
+----------------------------------------------------------------------------------------------+------------------------------------+
| description                                                                                  | expression                         |
+----------------------------------------------------------------------------------------------+------------------------------------+
| {#SENSOR_LOCATION}.IOH: Temperature is above warning threshold: >{$TEMP_WARN:"Ambient"}      | {19131}>{$TEMP_WARN:"Ambient"}     |
| {#SENSOR_LOCATION}.IOH: Temperature is above critical threshold: >{$TEMP_CRIT:"Ambient"}     | {19133}>{$TEMP_CRIT:"Ambient"}     |
| {#SENSOR_LOCATION}.IOH: Temperature is too low: <{$TEMP_CRIT_LOW:"Ambient"}                  | {19135}<{$TEMP_CRIT_LOW:"Ambient"} |
| {#SENSOR_LOCATION}.Ambient: Temperature is above warning threshold: >{$TEMP_WARN:"Ambient"}  | {19113}>{$TEMP_WARN:"Ambient"}     |
| {#SENSOR_LOCATION}.Ambient: Temperature is above critical threshold: >{$TEMP_CRIT:"Ambient"} | {19115}>{$TEMP_CRIT:"Ambient"}     |
| {#SENSOR_LOCATION}.Ambient: Temperature is too low: <{$TEMP_CRIT_LOW:"Ambient"}              | {19117}<{$TEMP_CRIT_LOW:"Ambient"} |
| {#SENSOR_LOCATION}.Front: Temperature is above warning threshold: >{$TEMP_WARN:"Ambient"}    | {19119}>{$TEMP_WARN:"Ambient"}     |
| {#SENSOR_LOCATION}.Front: Temperature is above critical threshold: >{$TEMP_CRIT:"Ambient"}   | {19121}>{$TEMP_CRIT:"Ambient"}     |
| {#SENSOR_LOCATION}.Front: Temperature is too low: <{$TEMP_CRIT_LOW:"Ambient"}                | {19123}<{$TEMP_CRIT_LOW:"Ambient"} |
| {#SENSOR_LOCATION}.Rear: Temperature is above warning threshold: >{$TEMP_WARN:"Ambient"}     | {19125}>{$TEMP_WARN:"Ambient"}     |
| {#SENSOR_LOCATION}.Rear: Temperature is above critical threshold: >{$TEMP_CRIT:"Ambient"}    | {19127}>{$TEMP_CRIT:"Ambient"}     |
| {#SENSOR_LOCATION}.Rear: Temperature is too low: <{$TEMP_CRIT_LOW:"Ambient"}                 | {19129}<{$TEMP_CRIT_LOW:"Ambient"} |
| {#SENSOR_LOCATION}: Temperature is above warning threshold: >{$TEMP_WARN:"CPU"}              | {19137}>{$TEMP_WARN:"CPU"}         |
| {#SENSOR_LOCATION}: Temperature is above critical threshold: >{$TEMP_CRIT:"CPU"}             | {19139}>{$TEMP_CRIT:"CPU"}         |
| {#SENSOR_LOCATION}: Temperature is too low: <{$TEMP_CRIT_LOW:"CPU"}                          | {19141}<{$TEMP_CRIT_LOW:"CPU"}     |
+----------------------------------------------------------------------------------------------+------------------------------------+
15 rows in set (0.002 sec)

 


Generated at Wed Apr 30 06:24:31 EEST 2025 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.