Error Facade.php on line 355 at cache/Port.php:31

We are having problems on our dashboard. The images of the graphs have stopped working and when we click on them we get an error message telling us to contact support.
Error-ID : 33cdbeac-34c6-4ea4-a94a-c43004ce8998
Checking the librenms.log the error that appears just when you click on it is the following:

[2025-01-23T11:24:48][ERROR] LibreNMS\Cache\Port::get(): Argument #1 ($port_id) must be of type int, string given, called in /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 355 {"userId":48,"exception":"[object] (TypeError(code: 0): LibreNMS\\Cache\\Port::get(): Argument #1 ($port_id) must be of type int, string given, called in /opt/librenms/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 355 at /opt/librenms/LibreNMS/Cache/Port.php:31)"} 

Broken widgets are of the type ‘manual ports’.

This is my validate.php:

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

Component Version
LibreNMS 25.1.0-36-gfdc303617 (2025-01-23T10:04:55+01:00)
DB Schema 2025_01_22_194342_drop_storage_deleted (312)
PHP 8.3.16
Python 3.10.12
Database MariaDB 10.6.18-MariaDB-0ubuntu0.22.04.1
RRDTool 1.7.2
SNMP 5.9.1
===========================================

[OK] Composer Version: 2.8.5
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database connection successful
[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
[OK] Active pollers found
[OK] Dispatcher Service not detected
[OK] Locks are functional
[OK] Python poller wrapper is polling
[OK] Redis is unavailable
[OK] rrd_dir is writable
[OK] rrdtool version ok

I have identical problem:

[2025-01-23T11:19:49][ERROR] LibreNMS\Cache\Port::get(): Argument #1 ($port_id) must be of type ?int, string given, called in /var/www/librenms/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 355 {“userId”:2,“exception”:“[object] (TypeError(code: 0): LibreNMS\Cache\Port::get(): Argument #1 ($port_id) must be of type ?int, string given, called in /var/www/librenms/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 355 at /var/www/librenms/LibreNMS/Cache/Port.php:31)”}

Component Version
LibreNMS 25.1.0-36-gfdc3036 (2025-01-23T09:04:55+00:00)
DB Schema 2025_01_22_194342_drop_storage_deleted (312)
PHP 8.3.8
Python 3.6.8
Database MariaDB 10.5.23-MariaDB
RRDTool 1.4.8
SNMP 5.7.2
===========================================

[OK] Composer Version: 2.8.4
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database connection successful
[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
[OK] Distributed Polling setting is enabled globally
[FAIL] You have not enabled rrdcached
[FIX]:
lnms config:set rrdcached
[OK] Active pollers found
[OK] Dispatcher Service is enabled
[OK] Locks are functional
[OK] No active python wrapper pollers found
[OK] Redis is functional
[OK] rrd_dir is writable
[OK] rrdtool version ok

Ditto. Seeing the same, but only on certain graphs on the dashboards. Eding and recreating the graphs fixed the issue it seems

In my case this solution does not work.
Thanks,

I noticed some extra bank space in my port config. that fixed it on another instance of mine

Ok. I have the solution.
This must be a bug.
When you create a “manual port” widget in Ports section automatically adds a ghost item.
ejemplo1
You have to delete thie item for it to work.
When you try to edit the element again, the ghost element appears again.
Thanks zr5tux

2 Likes

Okay, it’s worked. But I don’t guess it’s the best practice for this issue. Something happened after the update on January 21th. Probably the dev’s will never fix it, and in the future we need to exclude this ghost item again. I have a lot’s of manual ports in Dashboard. I really wish they fixed it to avoid future issues.

Ok. I have the solution.
This must be a bug.
When you create a “manual port” widget in Ports section automatically adds a ghost item.
ejemplo1
You have to delete thie item for it to work.
When you try to edit the element again, the ghost element appears again.
Thanks zr5tux

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.