We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
We have a couple of devices that spit out errors during polling: "Error polling availability module. Check log file for more details"
It seems as if LibreNMS is incorrectly calculating uptimes
-
No response
#### Load poller module core #### Module disabled: Global + | OS | Device | Manual - SNMP['/usr/bin/snmpget' '-M' '/opt/librenms/mibs:/opt/librenms/mibs/cisco' '-m' 'SNMPv2-TC:SNMPv2-MIB:IF-MIB:IP-MIB:TCP-MIB:UDP-MIB:NET-SNMP-VACM-MIB' '-v2c' '-c' 'COMMUNITY' '-OQXUte' '-On' 'udp:HOSTNAME:161' 'SNMPv2-MIB::sysUpTime.0'] .*.*.0 = 1090789817 SNMP['/usr/bin/snmpget' '-M' '/opt/librenms/mibs:/opt/librenms/mibs/cisco' '-m' 'SNMPv2-TC:SNMPv2-MIB:IF-MIB:IP-MIB:TCP-MIB:UDP-MIB:NET-SNMP-VACM-MIB' '-v2c' '-c' 'COMMUNITY' '-OQXUte' 'udp:HOSTNAME:161' 'SNMP-FRAMEWORK-MIB::snmpEngineTime.0' 'HOST-RESOURCES-MIB::hrSystemUptime.0'] SNMP-FRAMEWORK-MIB::snmpEngineTime.0 = 10907854 HOST-RESOURCES-MIB::hrSystemUptime.0 = No Such Object available on this agent at this OID Uptime seconds: 10907898 RRD[last 77.60.x.x/uptime.rrd --daemon unix:/run/rrdcached.sock] RRD[update 77.60.x.x/uptime.rrd N:10907898 --daemon unix:/run/rrdcached.sock] Uptime: 4 months 2 weeks 5 hours 58 minutes 18 seconds SQL[update `devices` set `uptime` = ? where `device_id` = ? [10907898,259] 0.42ms] >> SNMP: [3/0.11s] MySQL: [7/0.03s] RRD: [4/0.00s] >> Runtime for poller module 'core': 0.0755 seconds with 122136 bytes RRD[last 77.60.x.x/poller-perf-core.rrd --daemon unix:/run/rrdcached.sock] RRD[update 77.60.x.x/poller-perf-core.rrd N:0.075465202331543 --daemon unix:/run/rrdcached.sock] #### Unload poller module core #### #### Load poller module availability #### Module enabled: Global + | OS | Device | Manual + SQL[select * from `device_outages` where `device_outages`.`device_id` = ? and `device_outages`.`device_id` is not null and `up_again` >= ? order by `going_down` asc [259,1713090878] 9.22ms] SQL[select * from `availability` where (`device_id` = ? and `duration` = ?) limit 1 [259,86400] 0.28ms] SQL[update `availability` set `availability_perc` = ? where `availability_id` = ? [99.969,161] 0.23ms] RRD[last 77.60.x.x/availability-86400.rrd --daemon unix:/run/rrdcached.sock] RRD[update 77.60.x.x/availability-86400.rrd N:99.969 --daemon unix:/run/rrdcached.sock] 1 day : 99.969% SQL[select * from `device_outages` where `device_outages`.`device_id` = ? and `device_outages`.`device_id` is not null and `up_again` >= ? order by `going_down` asc [259,1712572478] 5.04ms] SQL[select * from `availability` where (`device_id` = ? and `duration` = ?) limit 1 [259,604800] 0.32ms] Error polling availability module for 77.60.x.x. PDOException: SQLSTATE[22003]: Numeric value out of range: 1264 Out of range value for column 'availability_perc' at row 1 in /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php:612 Stack trace: #0 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(612): PDOStatement->execute() #1 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(816): Illuminate\Database\Connection->Illuminate\Database\{closure}() #2 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(783): Illuminate\Database\Connection->runQueryCallback() #3 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(600): Illuminate\Database\Connection->run() #4 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(552): Illuminate\Database\Connection->affectingStatement() #5 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3486): Illuminate\Database\Connection->update() #6 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1060): Illuminate\Database\Query\Builder->update() #7 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1213): Illuminate\Database\Eloquent\Builder->update() #8 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1130): Illuminate\Database\Eloquent\Model->performUpdate() #9 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(601): Illuminate\Database\Eloquent\Model->save() #10 /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/helpers.php(307): Illuminate\Database\Eloquent\Builder->Illuminate\Database\Eloquent\{closure}() #11 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(599): tap() #12 /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\Database\Eloquent\Builder->updateOrCreate() #13 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2334): Illuminate\Database\Eloquent\Model->forwardCallTo() #14 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2346): Illuminate\Database\Eloquent\Model->__call() #15 /opt/librenms/LibreNMS/Modules/Availability.php(77): Illuminate\Database\Eloquent\Model::__callStatic() #16 /opt/librenms/LibreNMS/Poller.php(176): LibreNMS\Modules\Availability->poll() #17 /opt/librenms/LibreNMS/Poller.php(103): LibreNMS\Poller->pollModules() #18 /opt/librenms/app/Console/Commands/DevicePoll.php(45): LibreNMS\Poller->poll() #19 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\DevicePoll->handle() #20 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() #21 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure() #22 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod() #23 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\Container\BoundMethod::call() #24 /opt/librenms/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call() #25 /opt/librenms/vendor/symfony/console/Command/Command.php(326): Illuminate\Console\Command->execute() #26 /opt/librenms/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run() #27 /opt/librenms/vendor/symfony/console/Application.php(1096): Illuminate\Console\Command->run() #28 /opt/librenms/vendor/symfony/console/Application.php(324): Symfony\Component\Console\Application->doRunCommand() #29 /opt/librenms/vendor/symfony/console/Application.php(175): Symfony\Component\Console\Application->doRun() #30 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(201): Symfony\Component\Console\Application->run() #31 /opt/librenms/app/Console/Kernel.php(66): Illuminate\Foundation\Console\Kernel->handle() #32 /opt/librenms/lnms(38): App\Console\Kernel->handle() #33 {main} Next Illuminate\Database\QueryException: SQLSTATE[22003]: Numeric value out of range: 1264 Out of range value for column 'availability_perc' at row 1 (Connection: mysql, SQL: update `availability` set `availability_perc` = -2181.482 where `availability_id` = 162) in /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php:829 Stack trace: #0 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(783): Illuminate\Database\Connection->runQueryCallback() #1 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(600): Illuminate\Database\Connection->run() #2 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php(552): Illuminate\Database\Connection->affectingStatement() #3 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3486): Illuminate\Database\Connection->update() #4 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1060): Illuminate\Database\Query\Builder->update() #5 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1213): Illuminate\Database\Eloquent\Builder->update() #6 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1130): Illuminate\Database\Eloquent\Model->performUpdate() #7 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(601): Illuminate\Database\Eloquent\Model->save() #8 /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/helpers.php(307): Illuminate\Database\Eloquent\Builder->Illuminate\Database\Eloquent\{closure}() #9 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(599): tap() #10 /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\Database\Eloquent\Builder->updateOrCreate() #11 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2334): Illuminate\Database\Eloquent\Model->forwardCallTo() #12 /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2346): Illuminate\Database\Eloquent\Model->__call() #13 /opt/librenms/LibreNMS/Modules/Availability.php(77): Illuminate\Database\Eloquent\Model::__callStatic() #14 /opt/librenms/LibreNMS/Poller.php(176): LibreNMS\Modules\Availability->poll() #15 /opt/librenms/LibreNMS/Poller.php(103): LibreNMS\Poller->pollModules() #16 /opt/librenms/app/Console/Commands/DevicePoll.php(45): LibreNMS\Poller->poll() #17 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): App\Console\Commands\DevicePoll->handle() #18 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Util.php(41): Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() #19 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(93): Illuminate\Container\Util::unwrapIfClosure() #20 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\Container\BoundMethod::callBoundMethod() #21 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Container.php(662): Illuminate\Container\BoundMethod::call() #22 /opt/librenms/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\Container\Container->call() #23 /opt/librenms/vendor/symfony/console/Command/Command.php(326): Illuminate\Console\Command->execute() #24 /opt/librenms/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\Component\Console\Command\Command->run() #25 /opt/librenms/vendor/symfony/console/Application.php(1096): Illuminate\Console\Command->run() #26 /opt/librenms/vendor/symfony/console/Application.php(324): Symfony\Component\Console\Application->doRunCommand() #27 /opt/librenms/vendor/symfony/console/Application.php(175): Symfony\Component\Console\Application->doRun() #28 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(201): Symfony\Component\Console\Application->run() #29 /opt/librenms/app/Console/Kernel.php(66): Illuminate\Foundation\Console\Kernel->handle() #30 /opt/librenms/lnms(38): App\Console\Kernel->handle() #31 {main} SQL[insert into `eventlog` (`reference`, `type`, `datetime`, `severity`, `message`, `username`, `device_id`) values (?, ?, ?, ?, ?, ?, ?) [null,"poller","2024-04-15 12:34:38",5,"Error polling availability module. Check log file for more details.","",259] 0.29ms] SQLSTATE[22003]: Numeric value out of range: 1264 Out of range value for column 'availability_perc' at row 1 (Connection: mysql, SQL: update `availability` set `availability_perc` = -2181.482 where `availability_id` = 162) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 22003): SQLSTATE[22003]: Numeric value out of range: 1264 Out of range value for column 'availability_perc' at row 1 (Connection: mysql, SQL: update `availability` set `availability_perc` = -2181.482 where `availability_id` = 162) at /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php:829) [previous exception] [object] (PDOException(code: 22003): SQLSTATE[22003]: Numeric value out of range: 1264 Out of range value for column 'availability_perc' at row 1 at /opt/librenms/vendor/laravel/framework/src/Illuminate/Database/Connection.php:612)"} >> SNMP: [0/0.00s] MySQL: [6/0.15s] RRD: [4/0.00s] >> Runtime for poller module 'availability': 0.0227 seconds with 117576 bytes RRD[last 77.60.x.x/poller-perf-availability.rrd --daemon unix:/run/rrdcached.sock] RRD[update 77.60.x.x/poller-perf-availability.rrd N:0.022747993469238 --daemon unix:/run/rrdcached.sock] #### Unload poller module availability ####
The text was updated successfully, but these errors were encountered:
No branches or pull requests
The problem
We have a couple of devices that spit out errors during polling:
"Error polling availability module. Check log file for more details"
It seems as if LibreNMS is incorrectly calculating uptimes
Output of ./validate.php
What was the last working version of LibreNMS?
No response
Anything in the logs that might be useful for us?
The text was updated successfully, but these errors were encountered: