Cacti / plugin_syslog

Syslog Plugin for Cacti
GNU General Public License v2.0
21 stars 16 forks source link

syslog_process.php can stack up leading to DB connection exhaustion #187

Closed bmfmancini closed 2 years ago

bmfmancini commented 2 years ago

We have been seeing cases where syslog_process.php processes will stack up until the DB is exhausted

-it appears to start at midnight so around the deletion time -When syslog_process.php is running on the next polling cycle another will also execute piling up

If you pkill all of the processes everything goes back to normal for the whole day also this is not happening everyday Also, it doesn't present itself with a large ingress of Syslog

Mariadb 10.1.41 Rhel 7 Syslog 3.2

TheWitness commented 2 years ago

You fails to do a "show processlist" to show the blocking queries.

bmfmancini commented 2 years ago

Here is the processes piling up I am still waiting on the blocking query I am hoping we can get it from history

/var/www/html/cacti/plugins/syslog/syslog_process.php
apache   23629     1  0 03:27 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   23718     1  0 04:35 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   23767     1  0 03:28 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   23780     1  0 00:22 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   23847     1  0 05:12 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   23855     1  0 01:32 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   23972     1  0 01:20 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24002     1  0 06:40 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24133     1  0 02:33 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24208     1  0 04:44 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24296     1  0 00:20 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24302     1  0 00:44 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24378     1  0 05:00 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24430     1  0 00:32 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24435     1  0 01:20 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24662     1  0 03:29 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
apache   24913     1  0 03:32 ?        00:00:00 /bin/php -q /var/www/html/cacti/plugins/syslog/syslog_process.php
bmfmancini commented 2 years ago

This seems to be the culprit

syslog_query
bmfmancini commented 2 years ago

Hmm the query its self seems to be fine via DB

MariaDB [syslog]> DELETE FROM `syslog`.`syslog` WHERE logtime < '2022-06-30';
Query OK, 15246 rows affected (3.246 sec)
TheWitness commented 2 years ago

Your syslog is not partitioned. Move to a partitioned setup.