Назад | Перейти на главную страницу

Netdata записывает все в журналы mysql

Поскольку я включил журналы mariadb для всех запросов на моем сервере, использование Netdata каждую секунду показывает мне следующие запросы:

SHOW GLOBAL VARIABLES LIKE 'max_connections'
11 Query     SHOW GLOBAL STATUS
11 Query     commit

Я должен сказать, что это не помогает мне вкладывать средства в то, что происходит на сервере, потому что это загрязняет мои журналы.

Есть ли способ избежать регистрации такого рода запросов каждую секунду?

Хотя это наверное разумнее указать точную проблему с вашей базой данных вместо того, чтобы пытаться очистить журнал (Я бы предложил использовать для этого grep или sed). Но вот продуманное решение, которое решит вашу проблему с логированием раз и навсегда.

Мы будем перенаправлять журналы mysql в канал fifo, который будет считываться и фильтроваться с помощью syslog-ng.

Для этого перейдите в папку, в которой хранится файл общего журнала, удалите / переименуйте исходный журнал и создайте на его месте канал fifo с помощью команды:

mkfifo mysql-general.log

проверьте свой my.cnf, который должен указывать на этот файл:

[mysqld]
general-log-file = /path/to/your/log/mysql-general.log

Затем настройте свой /etc/syslog-ng/syslog-ng.conf (centos 7 на самом деле потребует сначала его установить), чтобы прочитать канал FIFO и при необходимости отфильтровать его при записи результата в окончательный файл ..

Вот пример конфигурации, которая соответствует вашим потребностям:

source s_mysql_general_log { pipe("/path/to/your/log/mysql-general.log" program_override("mysql-general-log")); };
filter f_mysql_general_log { not match("^SHOW GLOBAL VARIABLES LIKE 'max_connections'") and not match("^11 Query     SHOW GLOBAL STATUS") and not match("^11 Query     commit"); };
destination d_mysql_general_log { file("/var/log/mysql-general.log"); }
log { source(s_mysql_general_log); filter(f_mysql_general_log); destination(d_mysql_general_log); flags(final);   };

В результате вы получите /var/log/mysql-general.log файл, без вопросов, которые вам не нравятся ... Я постараюсь опубликовать версию этого решения только для systemd чуть позже