流式会话分段访问日志

为长连接流式应用按固定间隔写入访问日志。

流式应用通常只在会话结束时写入访问日志。开启分段访问日志 动作可以在长连接 仍然活跃时,按固定间隔写入日志,便于观察 TCP、UDP、SSL、MQTT 和 MQTTS 会话。

此功能在 OpenResty Edge 26.12.1-1 中首次引入。

配置动作

在流式应用的页面规则中添加 开启分段访问日志,然后设置:

  • 间隔:写入分段日志的间隔,单位为秒,最小值为 1,默认值为 300。
  • 会话总计:开启后,在会话结束时额外写入一条整个会话的累计记录; 关闭后只写入各时间段的增量记录。

包含分段访问日志动作的流式应用页面规则

保存并发布应用后,新连接会使用该设置。较短的间隔会提高可观测性,同时也会 显著增加日志量和日志服务器写入负载。

区分日志类型

在流式访问日志格式中加入 $access_log_type,可以区分定时写入的 interval、 会话结束时剩余增量的 final,以及可选的整个会话累计值 session_total。 分析流量时不要同时累加增量记录和 session_total,否则会重复计算。

如果日志格式没有包含 $access_log_type,不同类型的记录可能无法可靠区分。