diff --git a/centreon/common/ibm/nos/snmp/mode/components/temperature.pm b/centreon/common/ibm/nos/snmp/mode/components/temperature.pm index 704bf3121..bba2b8448 100644 --- a/centreon/common/ibm/nos/snmp/mode/components/temperature.pm +++ b/centreon/common/ibm/nos/snmp/mode/components/temperature.pm @@ -47,6 +47,11 @@ sub check { $temperature = $1 if ($1 > $temperature); my $critical_mib = ($warning_mib + $2) / 2; + if ($warning_mib == $critical_mib) { #seen on some chassis ! + $warning_mib -= 10; + $critical_mib -= 5; + } + $self->{components}->{temperature}->{total}++; $self->{output}->output_add(long_msg => diff --git a/network/lenovo/flexsystem/snmp/mode/components/temperature.pm b/network/lenovo/flexsystem/snmp/mode/components/temperature.pm index b590cc986..5c8ac9868 100644 --- a/network/lenovo/flexsystem/snmp/mode/components/temperature.pm +++ b/network/lenovo/flexsystem/snmp/mode/components/temperature.pm @@ -60,6 +60,11 @@ sub check { $temperature = $1 if ($1 > $temperature); my $critical_mib = ($warning_mib + $2) / 2; + if ($warning_mib == $critical_mib) { #seen on some chassis ! + $warning_mib -= 10; + $critical_mib -= 5; + } + $self->{output}->output_add( long_msg => sprintf( "temperature switch '%s' is %s C [instance: %s]",