MySQL 9.0 发行说明
本节介绍如何使用内置过滤器 log_filter_internal 和 JSON 接收器 log_sink_json 配置错误日志记录,使其立即生效并对后续的服务器启动有效。有关配置错误日志记录的常规信息,请参见 第 7.4.2.1 节,“错误日志配置”。
要启用 JSON 接收器,首先加载接收器组件,然后修改 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 接收器根据默认错误日志目的地确定其输出目的地,该目的地由 log_error 系统变量给出。如果 log_error 命名一个文件,则 JSON 接收器根据该文件名加上编号的 . 后缀确定输出文件名,其中 NN.jsonNN 从 00 开始。例如,如果 log_error 是 file_name,则在 log_error_services 值中命名的 log_sink_json 的后续实例将写入 、file_name.00.json,依此类推。file_name.01.json
如果 log_error 是 stderr,则 JSON 接收器将写入控制台。如果在 log_error_services 值中多次命名 log_sink_json,它们都将写入控制台,这可能没有用。