MariaDB Audit Plugin — Размещение и вращение логов
Логи могут записываться в отдельный файл или в системные логи. Если вы предпочитаете, чтобы ведение журнала было отделено от другой системной информации, значение переменной server_audit_output_type должно быть установлено в file. Кстати, file является единственным вариантом в системах Windows.
Вы можете принудительно произвести вращение, включив переменную server_audit_file_rotate_now, как показано ниже:
SET GLOBAL server_audit_file_rotate_now = ON;
Отдельные файлы логов
В дополнение к установке server_audit_output_type, вам необходимо указать путь и имя файла аудита. Это задается в переменной server_audit_file_path. Вы можете установить предел размера файла журнала с помощью переменной server_audit_file_rotate_size.
Таким образом, если вращение включено и файл журнала достиг установленного размера, создается копия с последовательным номером в качестве расширения, а исходный файл обрезается для повторного использования в аудировании. Чтобы ограничить количество созданных файлов логов, установите переменную server_audit_file_rotations. Вы можете принудительно произвести вращение файла журнала, установив переменную server_audit_file_rotate_now в значение ON. Когда разрешенное количество файлов достигнуто, самый старый файл будет перезаписан. Ниже приведен пример того, как могут быть настроены описанные выше переменные в конфигурационных файлах сервера:
[mysqld] ... server_audit_file_rotate_now=ON server_audit_file_rotate_size=1000000 server_audit_file_rotations=5 ...
Системные логи
По соображениям безопасности иногда лучше использовать системные логи, вместо локального файла, принадлежащего пользователю mysql. Для этого значение server_audit_output_type должно быть установлено в syslog. Расширенные конфигурации, такие как использование удаленной syslogd службы, являются частью конфигурации syslogd.
Переменные server_audit_syslog_ident и server_audit_syslog_info могут быть использованы для идентификации записи в системном журнале, созданной плагином аудита. Если для нескольких серверов MariaDB используется удаленная syslogd служба, эти же переменные используются для идентификации сервера MariaDB.
Ниже приведен пример записи в системном журнале, взятый с сервера, на котором server_audit_syslog_ident была установлена в значение по умолчанию mysql-server_auditing, а server_audit_syslog_info — в значение <prod1>.
Aug 717:19:58localhostmysql-server_auditing: <prod1> localhost.localdomain,root,localhost,1,7, QUERY, mysql, 'SELECT * FROM user',0
Хотя значения по умолчанию для server_audit_syslog_facility и server_audit_syslog_priority должны быть достаточными в большинстве случаев, их можно изменить, опираясь на определения в syslog.h для функций openlog() и syslog().
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/mariadb-audit-plugin-location-and-rotation-of-logs/