it-novum / openITCOCKPIT

openITCOCKPIT is an Open Source system monitoring tool built for different monitoring engines like Nagios, Naemon and Prometheus.
https://openitcockpit.io/
GNU General Public License v3.0
275 stars 50 forks source link

php8 compatibility issues #1386

Closed exa-mk closed 1 year ago

exa-mk commented 2 years ago

For a test we installed a new Ubuntu 22.04 LTS System (which is supported according to https://docs.openitcockpit.io/en/installation/), and imported the config and ip adresses of our "old" production system (which is temporarily deactivated).

Unfortunately only ~1/4 of the hosts (all via Agent Push configuration) came back online, the other agents got a 500 (Internal Server Error) and stayed "down".

After some investigations we found out that at least one php file seems not to be php8-compatible. In the log there was the message:

[TypeError] Unsupported operand types: string * int in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 144

The error raised on most of the agent pushes, but not all of them. The errornous submitted values seemed high but fine otherwise, e.g.

"bytes_sent": 81794911374
"bytes_recv": 83322576481

After manually putting an intval() around the $bytesWarningand $bytesCritical variables in the according lines it worked again. However, we still get some more php errors in the logs but I don't know if they're related.

IMHO it is also a bug that one failed value check crashes the whole process, there should be some try...catch (or similar - I'm not a developer) block around each check.

Please check and fix the php scripts for php8 compatibility and maybe add some error handling.

UPDATE: sorry, the bug report template didn't show up here somehow. I hope the problem is still clear and understandable.

nook24 commented 2 years ago

Unfortunately I was not able to reproduce this on my Ubuntu Jammy 22.04 system.

Description:    Ubuntu 22.04 LTS
PHP 8.1.2 (cli) (built: Jun 13 2022 13:52:54) (NTS)

I have no errors in my logs /opt/openitc/logs/frontend/*.log and my Agents in Push Mode are working fine. Could you please verify that all your packages are updated to the latest version 4.5.0-20220708163701jammy, especially the openitcockpit-common package

grafik

openITCOCKPIT is running on php8 on Red Hat based systems for month. Basically anything is php 8 ready and tested as far as i aware of.

exa-mk commented 2 years ago

Everything is up-to-date:

root@openitc:~# dpkg -l |grep openitcockpit
ii  openitcockpit                                   4.5.0-20220708171139jammy                     amd64        openITCOCKPIT Master
ii  openitcockpit-checkmk                           2.0.0-20220708171841jammy                     amd64        Checkmk Community Raw Edition for openITCOCKPIT
ii  openitcockpit-common                            4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend package
ii  openitcockpit-docker-compose                    1.29.1-20220708170215jammy                    amd64        docker compose packaged for openitcockpit
ii  openitcockpit-graphing                          4.5.0-20220708170227jammy                     amd64        openITCOCKPIT graph backend
ii  openitcockpit-module-autoreport                 4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module autoreport package
ii  openitcockpit-module-checkmk                    4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module checkmk package
ii  openitcockpit-module-design                     4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module design package
ii  openitcockpit-module-evc                        4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module evc package
ii  openitcockpit-module-grafana                    4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module grafana package
ii  openitcockpit-module-linux-basic-monitoring     4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module linux-basic-monitoring package
ii  openitcockpit-module-linux-basic-monitoring-ssh 4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module linux-basic-monitoring-ssh package
ii  openitcockpit-module-map                        4.5.0-20220708163701jammy                     amd64        openITCOCKPIT Frontend module map package
ii  openitcockpit-monitoring-plugins                2.3.1                                         amd64        monitoring plugins for openITCOCKPIT
ii  openitcockpit-mysql-health                      2.2.2                                         amd64        check_mysql_health plugin from ConSol for openITCOCKPIT
ii  openitcockpit-naemon                            1.3.0-20220708170820jammy                     amd64        Naemon Core for openITCOCKPIT
ii  openitcockpit-node                              4.5.0-20220708173022jammy                     amd64        openITCOCKPIT Nodejs backend
ii  openitcockpit-statusengine3-worker              3.7.4-20220708171406jammy                     amd64        Statusengine for openITCOCKPIT

As I wrote the NetIO.php error only applied to a (majority) part of our hosts, around 1/4 were still working. It seems like it's interpreting large integer values as a string as the explicit cast with intval() is working fine.

I still permanently get the following error in the log file (not sure if it's related):

2022-07-13 10:10:30 error: [Cake\Http\Exception\BadRequestException] Bad Request in /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Middleware/BodyParserMiddleware.php on line 168
Stack Trace:
- /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Runner.php:73
- /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Runner.php:58
- /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Server.php:90
- /opt/openitc/frontend/webroot/index.php:40
nook24 commented 2 years ago

I still permanently get the following error in the log file (not sure if it's related):

2022-07-13 10:10:30 error: [Cake\Http\Exception\BadRequestException] Bad Request in /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Middleware/BodyParserMiddleware.php on line 168
Stack Trace:
- /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Runner.php:73
- /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Runner.php:58
- /opt/openitc/frontend/vendor/cakephp/cakephp/src/Http/Server.php:90
- /opt/openitc/frontend/webroot/index.php:40

Is this the complete stack trace of the error message? Also, did you checked the Nginx error log at /opt/openitc/logs/nginx/error.log? Due to the BadRequestException in the BodyParserMiddleware, maybe the issue is caused by the max allowed request size of nginx.

nook24 commented 2 years ago

Line 144 is doing some math with the warning parameter:

 ($bytesWarning * 8 / 1024),

So the error should nothing have todo with the data provided by the agent.

Could you please check your arguments for any non numeric characters like spaces or so? grafik

exa-mk commented 2 years ago

The StackTrace is complete.

There're a lot of errors in the nginx.log:

2022/07/13 10:09:24 [error] 1329#1329: *58900 connect() to unix:/run/php/php-fpm-oitc.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 10.48.106.74, server: , reques
t: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/13 10:09:24 [error] 1329#1329: *58899 connect() to unix:/run/php/php-fpm-oitc.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 10.111.1.57, server: , request
: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/13 10:09:24 [error] 1329#1329: *58903 connect() to unix:/run/php/php-fpm-oitc.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 10.48.106.58, server: , reques
t: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/13 10:10:27 [crit] 1337#1337: *59256 SSL_read() failed (SSL: error:0A000126:SSL routines::unexpected eof while reading), client: 10.42.48.193, server: , request: "POST /agentconnector/submit_checkd
ata.json HTTP/1.1", host: "openitc.core.exasol.com"
2022/07/13 10:10:43 [crit] 1341#1341: *59586 SSL_read() failed (SSL: error:0A000126:SSL routines::unexpected eof while reading), client: 10.44.100.223, server: , request: "POST /agentconnector/submit_check
data.json HTTP/1.1", host: "openitc.core.exasol.com"
[...]
2022/07/13 10:12:03 [error] 1330#1330: *59702 connect() to unix:/run/php/php-fpm-oitc.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 10.111.1.30, server: , request
: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/13 10:12:03 [error] 1351#1351: *60268 connect() to unix:/run/php/php-fpm-oitc.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 10.42.1.71, server: , request:
 "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/13 10:12:03 [error] 1340#1340: *59731 connect() to unix:/run/php/php-fpm-oitc.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 10.48.106.63, server: , reques
t: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"

I checked the DB. There are some completely blank ('', not NULL) argumentvalues but no numeric ones with spaces or other weird characters. As I wrote above I sniffed (Wireshark) the values on one of the erroneous hosts transmitted JSON and there were only (high) integer values.

nook24 commented 2 years ago

Looks like your system is suffering from more than one issue. First you should resolve your php-fpm issue. You have to many requests for your current amount of workers. For this reason not all requests can get served and processed properly.

2022/07/13 10:09:24 [error] 1329#1329: *58900 connect() to unix:/run/php/php-fpm-oitc.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 10.48.106.74, server: , reques

Navigate to System -> Config file editor and edit the php-fpm config file /etc/php/X.X/fpm/pool.d/oitc.conf.

grafik

The amount of workers depends on your workload. I would recommend to double each number (at least).

To apply the changes run the following commands as root user

oitc cronjobs -f
openitcockpit-update

For the NetIO issue. Could you please paste the corresponding part of the /opt/openitc/receiver/etc/production.json config file for a Network Stats service, which is effected by this issue. To do so, open one of the services in the openITCOCKPIT interface and copy the UUID. Search the configuration file by the UUID and paste the JSON struct.

In my case it is looking something like this.

             {
                "plugin": "NetIO",
                "servicename": "Network stats of: ens33",
                "uuid": "7a27a960-0303-474b-a2a8-9928c37531d6",
                "args": [
                    "111411200",
                    "117964800",
                    "5",
                    "10",
                    "5",
                    "10",
                    "ens33"
                ]
            },
exa-mk commented 2 years ago

Hmm... now all hosts that I checked have blank values in the NetIO json. I'm quite sure last time there were values here. So I think the questions should be:

{                                                                                                                                                                                                
                "plugin": "NetIO",                                                                                                                                                                           
                "servicename": "Network Stats eth1",                                                                                                                                                         
                "uuid": "e4e97b74-0408-4042-b218-f2170eb956a5",                                                                                                                                              
                "args": [                                                                                                                                                                                    
                    "",                                                                                                                                                                                      
                    "",                                                                                                                                                                                      
                    "5",                                                                                                                                                                                     
                    "10",                                                                                                                                                                                    
                    "5",                                                                                                                                                                                     
                    "10",                                                                                                                                                                                    
                    "eth1"                                                                                                                                                                                   
                ]                                                                                                                                                                                            
            },
nook24 commented 2 years ago

why are there blank values in the database?

There are only two reasons i could think of:

  1. Someone delete the parameters via the interface. You could check the change log of openITCOCKPIT if the services got editited.
  2. Someone did some manipulations via the database

Please, never ever edit something through the database. Never 😊

why are the values not checked and fixed properly?

The system cannot magically fix missing values. They get calculated depending on the interface speed. You can do the math by yourself: https://github.com/it-novum/openITCOCKPIT/blob/4bc535977e6815f38d850f6190c183f35fb56942/src/itnovum/openITCOCKPIT/Agent/AgentResponseToServices.php#L423-L430

Or (probably more reasonable) you can delete the services and create them new through the wizard.

why does an error on one check kill the whole host response?

This is very unfortunate and caused by php 8.1. Instead of php 7, 8 seems to use Fatal Error for this which let's the whole scrip execution stop. We will address and fix this.

exa-mk commented 2 years ago

They get calculated depending on the interface speed.

That's interesting. So the value in the servicechecktemplate doesn't matter? They were also empty, I now entered a 0 there to be safe. If I understand it correctly there shouldn't be entries in the servicecommandargumentvalues if the value would be equal the one in servicetemplatecommandargumentvalues but the empty ones for the NetIO-Checks were present in both tables - not sure where they came from as I (and quite sure no one else here) didn't create them.

The system cannot magically fix missing values

No. But if a function/calculation/etc. in a process is expecting an Integer I'd make sure it gets one (e.g. by using intval()) - or check the value and break out of the routine before if I don't have the right type.

Please, never ever edit something through the database.

Sorry, I have ~500 hosts with ~13000 services to maintain. As there's still no mass editing possible and the API is a pain in the a... (topped only by the poor documentation) I can't help but do some adjustments directly in the database.

After fixing the NetIO services (and the template) the fatal error is gone for now but there's a new one in the nginx error.log file:

[...]
2022/07/21 08:29:21 [error] 3403869#3403869: *240 FastCGI sent in stderr: "PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113" while reading response header from upstream, client: 10.48.106.18, server: , request: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/21 08:29:21 [error] 3403869#3403869: *242 FastCGI sent in stderr: "PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113" while reading response header from upstream, client: 10.48.106.38, server: , request: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/21 08:29:21 [error] 3403869#3403869: *238 FastCGI sent in stderr: "PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113" while reading response header from upstream, client: 10.48.106.22, server: , request: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/21 08:29:21 [error] 3403869#3403869: *248 FastCGI sent in stderr: "PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113" while reading response header from upstream, client: 10.48.106.99, server: , request: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/21 08:29:22 [error] 3403869#3403869: *244 FastCGI sent in stderr: "PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113" while reading response header from upstream, client: 10.48.106.64, server: , request: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/21 08:29:22 [error] 3403869#3403869: *246 FastCGI sent in stderr: "PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113" while reading response header from upstream, client: 10.48.106.39, server: , request: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"
2022/07/21 08:29:22 [error] 3403869#3403869: *250 FastCGI sent in stderr: "PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112PHP message: PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 113" while reading response header from upstream, client: 10.48.106.75, server: , request: "POST /agentconnector/submit_checkdata.json HTTP/1.1", upstream: "fastcgi://unix:/run/php/php-fpm-oitc.sock:", host: "openitc.core.exasol.com"

UPDATE; after (manually!) re-saving each NetIO-Check the last mentioned errors are gone.

nook24 commented 2 years ago

No. But if a function/calculation/etc. in a process is expecting an Integer I'd make sure it gets one (e.g. by using intval()) - or check the value and break out of the routine before if I don't have the right type.

As I mentioned, that the checks are crashing completely due to a type issue (string * int) is something we will address. The internal tracking number for this is OA-45. By default php has no strict type checking enabled, as long as your input is a numeric value you are good to go. The issue you are facing, will only occur if the input value can not be converted into a float or int value. Your input value was an empty string "". php can't convert this into any number, and throws an error message. Your int cast is converting this into a zero 0 - which is still a bad value for warning and critical thresholds but better than crashing.

Over all it looks like this issue was caused by manual manipulation of the database in the first place. Even if we could implement some logic in the background to silently fix this, the question is why should we do this? If the issue would occur when using the web interface or the API this would be clearly needs to be fixed.

As soon as a user is messing around with the database, it is up to the user to know what he/she is doing.

for example your last error message

PHP Warning:  Undefined variable $networkDevice in /opt/openitc/receiver/src/itnovum/openITCOCKPIT/Checks/Receiver/Plugins/NetIO.php on line 112

The check is complaining that the network device, which should be monitored, is missing (argument 7). Every system has at least two network devices (loopback + ethernet). Real word computers have multiple network interfaces. The workstation I'm typing this on has 10 network interfaces. How should the check magically know which network interface to pick? So there will be no "fixing the users error" magic.

Sorry, I have ~500 hosts with ~13000 services to maintain. As there's still no mass editing possible and the API is a pain in the a... (topped only by the poor documentation) I can't help but do some adjustments directly in the database.

Just in case you don't already know but the Database schema of openITCOCKPIT is freely available. https://github.com/it-novum/openITCOCKPIT-dbschema I'm not telling you what to do or not do to. You are free to do whatever you want with your system 😊

I would recommend to consider to get an enterprise subscription. Our professional support team is providing API trainings and also assist on API questions. And of course, disaster recovery in case everything goes boom

UPDATE; after (manually!) re-saving each NetIO-Check the last mentioned errors are gone.

Perfect, good to know that you are up and running again!

exa-mk commented 2 years ago

As soon as a user is messing around with the database, it is up to the user to know what he/she is doing.

Of course. I hope to know what I'm doing :D

Just in case you don't already know but the Database schema of openITCOCKPIT is freely available. https://github.com/it-novum/openITCOCKPIT-dbschema I'm not telling you what to do or not do to. You are free to do whatever you want with your system blush

Good to know, thank you. btw: is it normal for the DB to grow to >700G?

I would recommend to consider to get an enterprise subscription. Our professional support team is providing API trainings and also assist on API questions. And of course, disaster recovery in case everything goes boom

We wanted to, but unfortunately after a first consulting session with a lot "that's not possible"s and "not implemented yet"s my superiors weren't that convinced anymore. However, I think for this discussion here's the wrong place.

Thank you for your help so far.

nook24 commented 1 year ago

Are there still any issues related with PHP 8.1? If not i would close this one.