有奖捉虫:云通信与企业服务文档专题,速来> HOT

功能简介

访问日志功能用于记录 Web 应用防火墙防护域名的访问日志信息,提供开启访问日志开关的域名在用户自定义的日志保存天数内(最大180天)的访问日志记录、查询和下载功能。启用访问日志功能后,您可以根据需要查询和下载访问日志,满足安全合规、安全运维等需求。
注意
使用访问日志功能,需要先 购买安全日志服务包,并且根据 操作步骤 启用访问日志开关。只有开启访问日志开关的域名,Web 应用防火墙才会记录该域名的访问日志。
关闭日志服务:如需关闭访问日志功能,可以在 续费管理 中,找到相应计费项取消。取消后,系统2个小时内停止新的访问日志写入,并于24小时内清空历史访问日志,请谨慎操作。
升级日志服务容量:当存储的日志容量超过购买容量后,系统将自动停止新的访问日志写入,历史的访问日志不受影响,直到到达存储周期后开始自动删除。为了避免超量导致丢失访问日志,建议关注日志使用量,提前扩容避免超量导致访问日志丢失。

操作步骤

启用访问日志

登录 Web 应用防火墙控制台,在左侧导航栏中,选择实例管理 > 域名接入,进入域名接入页面,在域名列表中选择域名,单击

开启访问日志开关。



配置访问日志存储

注意:
全部日志存储配置仅在选中“全部实例”且“全部域名”时展示,选中“单个域名”时,仅支持修改该域名的日志存储字段设置。
1. 登录 Web 应用防火墙控制台,在左侧导航栏中,选择访问日志 > 日志服务
2. 在日志服务页面,单击右上角存储配置,可以查看并修改日志存储相关配置。


生效域名范围:支持查看已经开启访问日志的域名数量,并支持单击前往设置,在域名列表中修改单个域名的访问日志开关开启状态。


日志保存天数:单击编辑,即可修改日志保存天数。支持修改为7天、30天、32天、60天、90天、180天。每2个月支持修改1次存储时长。


说明:
日志保存天数支持设置最大180天。为满足等保合规要求,建议用户访问日志存储天数设置为180天。
修改日志存储时长后,修改前存储的日志将按原存储时长淘汰,新存储的日志按修改后的存储时长淘汰。
日志字段设置:单击编辑,支持自定义勾选保存请求内容 Request Body、自定义 Headers。


说明:日志字段设置支持基于全部域名、单个域名进行设置。全部域名及单个域名均配置策略时,针对单个域名配置的策略优先生效。
日志清空次数:单击手动清空,支持删除当前存储的所有历史日志,部分统计和报表数据将被丢弃,操作不可恢复。每个自然月支持最多清空4次。


说明:
手动清空仅能针对当前所有日志,且操作预计耗时10分钟左右,操作期间停止写入日志。
3. 在日志服务页面,右上角可查看日志已使用容量进度条,单击了解详情,可跳转到 Web 应用防火墙的计费详情页面。



检索访问日志

1. 登录 Web 应用防火墙控制台,在左侧导航栏中,选择访问日志 > 日志服务
2. 快速检索:在日志查询页签,您可以根据需要选择实例、域名、时间维度等信息,快速筛选访问日志。


字段名称
字段说明
实例过滤
支持多选,默认显示全部实例。
域名过滤
支持多选,默认显示全部域名。
时间范围
默认为今天,支持筛选最近时间及相对时间。可检索的时间范围和日志存储时长保持一致,每次最多选择30天。
3. 过滤检索:选择字段、操作符、输入字段值,单击确定即可快捷添加检索条件;支持添加多个检索条件,多个检索条件间是“与”的关系。


说明
匹配字符:精准匹配,需要输入完整需要检索的字段值。
模糊匹配字符:前缀匹配,需要输入字段值前缀(如示例图),不需要添加通配符*
不包含字符:精准匹配,需要输入完整需要排除检索的字段值。
匹配以下任意字符:精准匹配,需要输入多个完整的需要检索的字段值。
不包含以下任意字符:精准匹配,需要输入多个完整的需要排除检索的字段值。
4. 语句检索:为用户提供专业的语句实现日志检索功能,满足更复杂的日志检索需求。
输入所需检索条件后,单击

,即可查询检索结果。
单击

,即可展开检索语法说明。单击检索语法,查看更多检索语法说明。


检索语法
保留字符
说明
AND
“与”逻辑操作符,例如 level:ERROR AND pid:1234
OR
“或”逻辑操作符,例如 level:ERROR OR level:WARNING
NOT
“非”逻辑操作符,例如 level:ERROR NOT pid:1234
()
分组操作符,控制逻辑运算优先级,例如 (ERROR OR WARNING) AND pid:1234
冒号,表示作用于的 key 字段,即键值检索,例如 level:ERROR
""
双引号,引用一个短语词组(短语当作一个整体词组),例如 name:"john Smith"
*
通配符查询,匹配零个、单个、多个字符,例如 host:www.test*.com,不支持前缀模糊查询还可以通过 key:* 的方式查询字段(key)存在的日志,等价于 _exists_:key
?
通配符查询,匹配单个字符,例如 host:www.te?t.com*类似,不支持前缀模糊查询
>
范围操作符,表示大于某个数值,例如 status:>400
>=
范围操作符,表示大于等于某个数值,例如 status:>=400
<
范围操作符,表示小于某个数值,例如 status:<400
<=
范围操作符,表示小于等于某个数值,例如 status:<=400
TO
“范围”逻辑操作符,例如 request_time:[0.1 TO 1.0]
[]
范围操作符,包含边界值的范围,例如 age:[20 TO 30]
{}
范围操作符,不包含边界值的范围,例如 age:{20 TO 30}
注意
语法区分大小写,例如 AND、OR 表示检索逻辑操作符,而 and、or 视为普通文本。
多个检索条件使用空格连接时,视为”或“逻辑,例如 warning error 等价于 warning OR error。
检索关键字中存在特殊字符时,需使用转义符进行转义,特殊字符包括 + - && || ! ( ) { } [ ] ^ " ~ * ? : \\。
同时使用 AND 和 OR 逻辑运算符时,请使用()对检索条件进行分组,以明确逻辑优先级,例如(ERROR OR WARNING) AND pid:1234。

分析访问日志

1. 登录 Web 应用防火墙控制台,在左侧导航栏中,选择访问日志 > 日志服务
2. 在访问日志数据列表左侧,单击“字段名称”,会按日志数大小排序展示与本字段匹配的 TOP 5 字段详情及日志数占比。各字段说明,请参见 日志详情字段说明


3. 在访问日志数据列表中,单击每条展示日志发生时间左侧的

,可以查看字段详情;单击 JSON,可以查看 JSON 格式的字段详情。各字段说明,请参见 日志详情字段说明


4. 在访问日志数据列表右上角,支持切换列表和字段两种展示方式。默认展示字段模式,单击右上角

切换至列表模式。



下载访问日志

1. 登录 Web 应用防火墙控制台,在左侧导航栏中,选择访问日志 > 日志服务
2. 在访问日志数据列表右上角, 单击

,侧边栏展开下载任务页面。
注意
默认下载当前检索的日志范围。
同一时间段内只允许创建一个下载任务,请耐心等待。
单次最多下载100万条日志,如果您需要下载的日志超过100万条,建议您分多次任务进行下载。
当选择泛域名(如:*.abc.com)时,所有关联子域名(以.abc.com结尾)的日志也将会被下载。
最多创建五条下载任务,请注意下载的任务数。
3. 在下载任务页面,单击创建任务


4. 在创建下载任务弹窗中,单击确认

5 创建任务后,在下载任务页面,可以查看创建日志文件的序号、创建时间、日志总数、投递状态。单击下载,即可下载 json 格式的日志文件。
说明
创建成功的日志下载任务,保留3天,超过3天之后日志文件将会删除,请及时下载。

附录

日志详情字段说明

信息类型
字段名
说明
基础信息
domain
域名:所属泛域名。
request_time
请求耗时:客户端请求达到 Web 应用防火墙和从 Web 应用防火墙返回需要的时间。
client
访问源 IP:客户端请求源 IP。
uuid
请求 UUD:HTTP 请求唯一标识。
schema
请求协议:HTTP 或者 HTTPS。
method
客户端请求方法。
instance
域名接入的 Web 应用防火墙实例名称。
edition
域名接入的 Web 应用防火墙实例类型:分为 sparta-waf(SaaS 型 WAF)和 clb-waf(负载均衡型 WAF)。
appid
用户腾讯云账号的 APPID。
访问 IP 信息
ipinfo_nation
访问 IP 所属国家名称。
ipinfo_state
访问 IP 所属国家英文简称。
ipinfo_city
访问 IP 所属城市。
ipinfo_province
访问 IP 所属省份。
ipinfo_isp
访问 IP 所属运营商。
ipinfo_detail
访问 IP 详情。
ipinfo_longitude
访问 IP 所属经度信息。
ipinfo_dimensionality
访问 IP 所属纬度信息。
请求详情信息
url
请求的 uri:客户端完整请求路径中,域名后第一个“/”到“?”之间的内容。
accept
HTTP 请求头部字段,用于告知服务器客户端所支持的响应内容类型。
encoding
HTTP 请求头部字段,用于告知服务器客户端所支持的压缩算法。
language
HTTP 请求头部字段,用于告知服务器客户端所支持的语言。
connection
HTTP 请求头部字段,控制连接行为,例如保持连接、关闭连接等。
content_type
HTTP 请求头部字段,指定请求体的 MIME 类型。
cookie
请求的 cookie 信息,最大长度为 1K。
host
客户端请求域名。
referer
源页面。
x_forwarded_for
记录客户端请求经过的所有代理 IP 地址及客户端真实 IP 地址。
user_agent
请求 UA:服务器客户端的软件和操作系统信息。
headers
HTTP 请求的头部信息。
request_length
请求的大小,上行带宽。
query
HTTP 请求的 Query String,最大长度为 1K。
msec
请求发生时候的时间戳。
time
NGINX 的本地可读性的时间字符串。
应答详情信息
upstream_status
源站返回给 Web 应用防火墙的响应状态码。
status
SAAS 型 Web 应用防火墙返回给客户端的响应状态码:
200:正常请求
202:前端对抗
302:重定向
403:拦截
4XX:参考 HTTP 响应状态码标准定义
5XX:参考 HTT P响应状态码标准定义
负载均衡型 Web 应用防火墙返回给负载均衡的响应状态码:
600:正常请求
624:前端对抗
621:重定向
615:拦截
bytes_sent
响应体大小。
upstream_connect_time
客户端请求从 Web 应用防火墙到源站需要的连接时间。
upstream_response_time
客户端请求从源站返回到 Web 应用防火墙需要的时间。
upstream
上游服务器 IP。
BOT 流量信息
bot_module
当前访问请求命中的 BOT 检测模块。
bot_action
当前访问请求对应执行的 BOT 处置动作。
bot_score
当前访问请求的 BOT 得分信息。
bot_label
当前访问请求命中的 BOT 标签。
ua_type
当前访问请求中访问用户的 User-Agent 类型。
ua_crawlername
当前访问请求中疑似爬虫的 User-Agent 名称。
ua_fake
当前访问请求中的 User-Agent 是否伪造,0为否,1为是。
ua_goodbot
当前访问请求中的 BOT 是否为 goodbot,0为否,1为是。
bot_ai
当前访问请求是否命中 AI 引擎的异常请求,0为无异常,1为异常。
bot_stat
当前访问请求是否命中智能统计的异常请求,0为无异常,1为异常。
bot_ti_tags
当前访问请求是否命中威胁情报,展示命中的情报标签。
bot_id
当前访问请求的 BOT ID。
bot_scene_id
当前访问请求命中的 BOT 场景ID。
bot_action_id
当前访问请求命中的 BOT 动作策略 ID。
bot_rule_id
当前访问请求命中的 BOT 规则 ID。
bot_rule_name
当前访问请求命中的 BOT 规则名称。
bot_token
当前访问请求的 BOT 会话 ID。