Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 Reference Manual  /  ...  /  Error Logging in JSON Format

7.4.2.7 错误日志记录在JSON格式中

本节描述如何使用内置过滤器 log_filter_internal 和 JSON sink log_sink_json 配置错误日志记录,以便立即生效并在后续服务器启动时生效。有关错误日志记录配置的常规信息,请参阅 第 7.4.2.1 节,“错误日志配置”

要启用 JSON sink,首先加载 sink 组件,然后修改 log_error_services 值:

INSTALL COMPONENT 'file://component_log_sink_json';
SET PERSIST log_error_services = 'log_filter_internal; log_sink_json';

要使 log_error_services 在服务器启动时生效,请使用 第 7.4.2.1 节,“错误日志配置” 中的说明。这些说明也适用于其他错误日志记录系统变量。

允许在 log_error_services 值中多次命名 log_sink_json。例如,要写入未过滤的事件和过滤的事件,可以将 log_error_services 设置如下:

SET PERSIST log_error_services = 'log_sink_json; log_filter_internal; log_sink_json';

JSON sink 根据默认错误日志目标确定其输出目标,该目标由 log_error 系统变量给出。如果 log_error 命名了一个文件,JSON sink 将基于该文件名加上编号的 .NN.json 后缀,NN 从 00 开始。例如,如果 log_errorfile_name,则连续实例的 log_sink_json 命名在 log_error_services 值中将写入 file_name.00.jsonfile_name.01.json 等。

如果 log_errorstderr,JSON sink 将写入控制台。如果 log_sink_jsonlog_error_services 值中命名多次,它们都将写入控制台,这可能不是有用的。