WebUI broke after 1.64.1-41-g62ca4ea

Tags: #<Tag:0x00007f521ff86718>

Hello, Has anyone faced this issue after last git pull?
I got this error on the webui, tried multiple browsers with the same issue.

I have a separate lab librenms instance, update to v1.64.1-41-g62ca4ea also faced the same issue.

“Whoops, looks like something went wrong. Check your librenms.log.
Check your log for more details. (librenms.log)”

from librenms.log:

[2020-06-12 15:38:34] production.ERROR: Target class [2fa] does not exist. {“userId”:1,“exception”:"[object] (Illuminate\Contracts\Container\BindingResolutionException(code: 0): Target class [2fa] does not exist. at /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Container.php:805)
[stacktrace]
#0 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Container.php(681): Illuminate\Container\Container->build()
#1 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(785): Illuminate\Container\Container->resolve()
#2 /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Container.php(629): Illuminate\Foundation\Application->resolve()
#3 /opt/librenms/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(770): Illuminate\Container\Container->make()

more errors in librenms.log:

[2020-06-12 15:30:29] production.ERROR: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ‘"’ at line 1 (SQL: SELECT * FROM devices,ports WHERE (devices.device_id = 76 AND devices.device_id = ports.device_id) AND (((ports.ifInOctets_rate*8) / ports.ifSpeed) 100) >= 90 AND ports.ifType REGEXP “ethernet” = ") (SQL: SELECT * FROM devices,ports WHERE (devices.device_id = 76 AND devices.device_id = ports.device_id) AND (((ports.ifInOctets_rate 8) / ports.ifSpeed)*100) >= 90 AND ports.ifType REGEXP “ethernet” = ")#0 /opt/librenms/LibreNMS/Alert/AlertRules.php(74): dbFetchRows(‘SELECT * FROM d…’, Array)
#1 /opt/librenms/poller.php(156): LibreNMS\Alert\AlertRules->runRules(76)
#2 {main}

Re-run validate.php. It will probably complain about laravel and ask you to run the composer check. Once that is done, run validate.php again and it should be ok. This is what I had to do.

I did a few times did not help.
Finally after few days I did git pull. the update 1.64.1-48-g15fe63d resolves the issue.

I have the same issue:

Component Version
LibreNMS 1.64.1-181-g9372074
DB Schema 2020_05_22_020303_alter_metric_column (168)
PHP 7.3.19
Python 3.6.8
MySQL 5.5.65-MariaDB
RRDTool 1.4.8
SNMP NET-SNMP 5.7.2

====================================

I had LibreNMS | 1.64.1-163-g8e60f8f

did a “git pull” to get to LibreNMS | 1.64.1-181-g9372074

Still pulling the same error when i go to browse to my server:
production.ERROR: Target class [2fa] does not exist. {“userId”:1,“exception”:"[object] (Illuminate\Contracts\Container\BindingResolutionException(code: 0): Target class [2fa] does not exist. at /opt/librenms/vendor/laravel/framework/src/Illuminate/Container/Container.php:805)
[stacktrace]

Ideas?

Thanks for all the replies!

After about a week of doing the following:

./validate.php

su - librenms
git pull
./daily.sh

it went to this:

Component Version
LibreNMS 1.64.1-310-g89cf1d0
DB Schema 2020_06_23_00522_alter_availability_perc_column (170)
PHP 7.3.19
Python 3.6.8
MySQL 5.5.65-MariaDB
RRDTool 1.4.8
SNMP NET-SNMP 5.7.2

====================================

[OK] Composer Version: 1.10.8
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database schema correct
[[email protected] librenms]#

The errors cleared from the log and the WebUI is working like a charm.

-Mike