1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-07 00:04:31 +03:00

Merge branch '10.6' into 10.11

This commit is contained in:
Oleksandr Byelkin
2024-01-30 08:17:58 +01:00
185 changed files with 6011 additions and 1647 deletions

View File

@@ -15,6 +15,7 @@
#include <mysql/plugin_audit.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <mysql/service_logger.h>
@@ -40,6 +41,7 @@ static unsigned long long size_limit;
static unsigned int rotations;
static char rotate;
static char warnings;
static char with_db_and_thread_info;
static unsigned int count;
LOGGER_HANDLE *logfile;
@@ -73,6 +75,12 @@ static MYSQL_SYSVAR_BOOL(warnings, warnings,
"Warnings. If set to 0, warnings are not logged.",
NULL, NULL, 1);
static MYSQL_SYSVAR_BOOL(with_db_and_thread_info, with_db_and_thread_info,
PLUGIN_VAR_READONLY | PLUGIN_VAR_OPCMDARG,
"Show details about thread id and database name in the log",
NULL, NULL,
0);
static struct st_mysql_sys_var* vars[] = {
MYSQL_SYSVAR(rate),
MYSQL_SYSVAR(size_limit),
@@ -80,6 +88,7 @@ static struct st_mysql_sys_var* vars[] = {
MYSQL_SYSVAR(rotate),
MYSQL_SYSVAR(filename),
MYSQL_SYSVAR(warnings),
MYSQL_SYSVAR(with_db_and_thread_info),
NULL
};
@@ -90,6 +99,7 @@ static void log_sql_errors(MYSQL_THD thd __attribute__((unused)),
{
const struct mysql_event_general *event =
(const struct mysql_event_general*)ev;
if (rate &&
(event->event_subclass == MYSQL_AUDIT_GENERAL_ERROR ||
(warnings && event->event_subclass == MYSQL_AUDIT_GENERAL_WARNING)))
@@ -103,12 +113,35 @@ static void log_sql_errors(MYSQL_THD thd __attribute__((unused)),
count = 0;
(void) localtime_r(&event_time, &t);
logger_printf(logfile, "%04d-%02d-%02d %2d:%02d:%02d "
if (with_db_and_thread_info)
{
if (event->database.str)
{
logger_printf(logfile, "%04d-%02d-%02d %2d:%02d:%02d %lu "
"%s %`s %s %d: %s : %s \n",
t.tm_year + 1900, t.tm_mon + 1, t.tm_mday, t.tm_hour, t.tm_min,
t.tm_sec, event->general_thread_id, event->general_user,
event->database.str, type,
event->general_error_code, event->general_command, event->general_query);
}
else
{
logger_printf(logfile, "%04d-%02d-%02d %2d:%02d:%02d %lu "
"%s NULL %s %d: %s : %s \n",
t.tm_year + 1900, t.tm_mon + 1, t.tm_mday, t.tm_hour, t.tm_min,
t.tm_sec, event->general_thread_id, event->general_user, type,
event->general_error_code, event->general_command, event->general_query);
}
}
else
{
logger_printf(logfile, "%04d-%02d-%02d %2d:%02d:%02d "
"%s %s %d: %s : %s\n",
t.tm_year + 1900, t.tm_mon + 1,
t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec,
event->general_user, type, event->general_error_code,
event->general_command, event->general_query);
t.tm_year + 1900, t.tm_mon + 1,
t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec,
event->general_user, type, event->general_error_code,
event->general_command, event->general_query);
}
}
}
}
@@ -167,7 +200,7 @@ maria_declare_plugin(sql_errlog)
0x0100,
NULL,
vars,
"1.0",
"1.1",
MariaDB_PLUGIN_MATURITY_STABLE
}
maria_declare_plugin_end;