日志等级控制

在最新版本中底层已规范了日志等级控制相关的特性,并定义了相关常量。可使用下列方法设置log_leveltrace_flags选项:

$serv->set([
	'log_level' => SWOOLE_LOG_TRACE,
	'trace_flags' => SWOOLE_TRACE_ALL,
]);

日志等级

可以通过设置log_level控制日志等级。底层支持6种错误日志等级:

其中SWOOLE_LOG_DEBUGSWOOLE_LOG_TRACE两种日志,必须在编译swoole扩展时使用--enable-swoole-debug--enable-trace-log后才可以使用。正常版本中即使设置了log_level = SWOOLE_LOG_TRACE也是无法打印此类日志的。

跟踪标签

线上运行的服务,随时都有大量请求在处理,底层抛出的日志数量非常巨大。可使用trace_flags设置跟踪日志的标签,仅打印部分跟踪日志。trace_flags支持使用|或操作符设置多个跟踪项。

$serv->set([
	'log_level' => SWOOLE_LOG_TRACE,
	'trace_flags' => SWOOLE_TRACE_SERVER | SWOOLE_TRACE_HTTP2,
]);

底层支持以下跟踪项,可使用SWOOLE_TRACE_ALL表示跟踪所有项目: