为Web 应用防火墙 WAF(Web Application Firewall)防护对象开启日志采集后,您可以通过日志查询,对防护对象的日志数据进行查询与分析,并基于查询与分析结果生成统计图表、创建告警等。
适用范围
查询与分析日志
登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
在左侧导航栏,选择
在日志服务页面左上角,选择要查询日志的防护对象。
重要防护对象必须开启日志采集(状态为已开启),否则WAF无法采集其日志数据。若所选防护对象未开启日志采集,请在当前页面搜索该防护对象,单击其名称,并开启状态开关以启用日志采集。
在日志查询页签,通过查询与分析语句,对WAF日志数据进行查询与分析。
在语句输入框,输入查询语句。
查询语句采用阿里云日志服务专用语法,关于该语法的详细介绍,请参见查询语法与功能。查询语句中使用WAF日志包含的字段作为查询字段,关于支持使用的查询字段,请参见日志字段说明。
如果您不了解日志查询语法,推荐使用高级搜索。只需在语句输入框上方展开高级搜索,设置搜索条件并单击搜索,语句输入框即可自动生成与搜索条件匹配的日志查询语句。下表描述了高级搜索支持设置的搜索条件。
搜索条件
说明
IP
发起请求的客户端的IP地址。
请求ID
WAF为客户端请求生成的唯一标识。WAF向客户端返回拦截页面或者滑块验证响应时会提供该ID,用于问题分析与故障排查。
规则ID
请求命中的WAF防护规则的ID。您可以防护规则页面,查询具体规则的规则ID;或者在安全报表页面,通过规则命中纪录或统计数据,获取请求命中的规则ID。更多信息,请参见安全报表。
服务器响应状态码
源站服务器响应WAF回源请求的HTTP状态码。
WAF返回客户端响应码
WAF响应客户端请求的HTTP状态码。
防护模块
请求命中的WAF防护模块的类型。关于WAF防护模块的介绍及不同模块防护规则的配置方法,请参见防护配置概述。
如果您需要对查询结果进行计算和统计分析,可以在语句输入框已输入的查询语句后,输入分析语句;如果您只需要查询满足条件的日志数据,可以跳过该步骤。
分析语句和查询语句间使用竖线(|)分隔。分析语句采用标准的SQL 92语法,关于分析语句的更多介绍,请参见查询与分析概述。
通过时间选择器,设置要查询的日志的创建时间范围。
单击查询 / 分析。
查询与分析结果(即命中查询条件的WAF日志数据)将会显示在页面下方,包含日志分布直方图、原始日志、统计图表、日志聚类。可以基于查询结果进行快速分析、生成统计图表、设置告警等,具体说明,请参见查询/分析页面说明。
常见查询场景示例
以下示例展示 WAF 日志常见的查询与分析场景。查询语句中的时间范围通过控制台上方的时间选择器设置,无需在语句中编写时间过滤条件。
请根据实际业务情况,将下文中的域名与IP地址等信息替换为真实值。
查询访问IP TOP 10:
host:example.com |SELECT real_client_ip,COUNT(*) as c group by real_client_ip order by c desc limit 10查询访问URL TOP 10:
host:example.com |SELECT request_path,COUNT(*) as c group by request_path order by c desc limit 10查询某个IP访问的URL(遭受CC攻击时,被攻击的接口通常较为集中):
host:example.com and real_client_ip:1.2.3.4 |SELECT request_path,COUNT(*) as c group by request_path order by c desc limit 10查询某个接口访问TOP 10 IP(遭受攻击时,通常恶意IP排行靠前):
host:example.com and request_path: "/login.php" |SELECT real_client_ip,COUNT(*) as c group by real_client_ip order by c desc limit 10查询状态码(通过异常状态码确认业务是否正常):
host:example.com|select status, upstream_status,COUNT(*) as c GROUP by status, upstream_status order by c desc limit 10查找命中CC防护模块的IP:
host:example.com and final_plugin:cc |select real_client_ip,COUNT(*) as c group by real_client_ip order by c desc limit 10
导出查询结果
执行查询后,您可以在原始日志页签单击下载日志,将当前查询结果中的原始日志数据导出为 CSV 文件。
统计图表页签不支持直接下载数据表。
大数据量日志分析建议
当 WAF 日志数据量较大时(例如百万级以上),不建议导出全量原始日志后在本地处理。推荐直接使用日志查询页面的 SQL 分析功能进行聚合统计,在云端完成计算后仅下载统计结果。
例如,统计各防护规则的命中数量:
* | SELECT matched_host, final_action, COUNT(*) as c GROUP BY matched_host, final_action ORDER BY c DESC LIMIT 1000统计指定时间段内各域名的访问量:
* | SELECT host, COUNT(*) as pv GROUP BY host ORDER BY pv DESC LIMIT 100利用 GROUP BY、COUNT、SUM 等 SQL 聚合函数在云端完成计算,可以显著提高大数据量场景下的分析效率,避免因导出全量原始日志导致的超时或文件过大问题。
查询/分析页面说明
页面概览
日志服务(SLS)原始日志查询页面主要包含以下区域:
顶部搜索栏:支持输入查询语句(SQL、SPL 或 Copilot),右侧可选择时间范围(如最近1分钟)
搜索结果概览:显示匹配的日志条数(示例为 7,246 条)及时间分布直方图
页签区域:包含原始日志、统计图表、日志聚类三个页签,支持表格/原始视图切换、换行开关及分页设置
左侧显示字段面板:列出索引字段,如
@timestamp、host、remote_addr、request_method、status、uri等主区域:展示每条日志的结构化键值对详情,包含时间戳、来源 IP、主机名、请求方法、请求路径、响应状态码等 Nginx 访问日志字段
直方图

将鼠标悬浮在绿色数据块上时,您可以查看该数据块代表的时间范围和日志命中次数。
双击绿色数据块,您可以查看更细时间粒度的日志分布,同时原始日志页签中将同步展示指定时间范围内的查询结果。
原始日志
日志详情
单击表格或原始,切换日志格式。
:可下载日志到本地。具体操作,请参见下载日志。
单击
(设置图标),选择JSON 设置:可设置 JSON 展示类型和展示级别。单击
(设置图标),选择事件配置:为原始日志配置事件。
(复制图标):单击可复制当前日志内容。
(Copilot 图标):SLS Copilot,基于日志内容总结信息、查找错误信息等。
(上下文浏览图标):查看指定日志在原始文件中的上下文信息。只有通过Logtail采集到的日志才支持上下文浏览功能。具体操作,请参见上下文查询。
(LiveTail 图标):实时监控日志内容,提取关键日志信息。只有通过 Logtail 采集到的日志才支持 LiveTail 功能。具体操作,请参见LiveTail。
显示字段
在显示字段区域,单击目标字段后的
,将索引字段从显示字段中清除,右侧的日志信息中不再显示。
(收藏图标):收藏视图。设置显示字段后,可以收藏当前视图,后续可在上方的下拉列表中选择已收藏的视图。单击
(设置图标),选择tag 设置:将字段设置为系统 Tag。单击
(设置图标),选择别名:开启后,字段名称将被别名替换,未设置别名的字段仍展示字段名称。设置字段别名的步骤,请参见创建索引。
索引字段
在索引字段区域,单击目标字段后的
,将字段添加到显示字段中,在右侧的日志信息中显示。
(数据概况图标):查看字段的基本分布情况、统计指标等信息。具体操作,请参见字段设置。
统计图表
统计图表是日志服务根据查询与分析语句渲染出的结果。日志服务提供表格、线图、柱状图等多种图表类型。具体操作,请参见统计图表。 执行查询和分析语句后,您可以在统计图表页签中查看可视化的查询和分析结果。
本页签其他功能说明:
添加到仪表盘:仪表盘是日志服务提供的实时数据分析大盘。单击添加到仪表盘,将查询和分析结果以图表形式保存到仪表盘中。具体操作,请参见可视化概述。
另存为定时SQL:日志服务提供定时SQL功能,用于定时分析数据、存储聚合数据、投影与过滤数据。具体操作,请参见定时SQL。
交互事件:交互事件是数据分析中不可缺少的功能之一,通过改变数据维度的层次、变换分析的粒度从而获取数据中更详尽的信息。具体操作,请参见为仪表盘添加交互事件实现下钻分析。
日志聚类
在日志聚类页签中,单击开启日志聚类,可实现在采集日志时聚合相似度高的日志。具体操作,请参见日志聚类。
SQL增强
单击右上角
图标,可单次开启SQL独享版。当您在使用SQL分析时,如果数据量较大,日志服务无法在一次查询中完整分析这个时间段内的所有日志。通过开启SQL独享版,增加计算资源,可以提升单次分析的数据量。如需设置默认开启,请参见高性能完全精确查询与分析(SQL独享版)。
告警
单击右上角
图标,将查询和分析结果另存为告警。具体操作,请参见告警设置快速入门。
快速查询
单击右上角
图标,将当前查询和分析语句另存为快速查询。您可通过保存的历史操作,快速执行查询和分析操作。具体操作,请参见快速查询。
分享
单击右上角
图标,复制本页面链接,分享给其他用户。具体操作,请参见控制台内嵌及分享。
> 下载日志
(上下文浏览图标):查看指定日志在原始文件中的上下文信息。只有通过Logtail采集到的日志才支持上下文浏览功能。具体操作,请参见
(LiveTail 图标):实时监控日志内容,提取关键日志信息。只有通过 Logtail 采集到的日志才支持 LiveTail 功能。具体操作,请参见
(设置图标),选择tag 设置:将字段设置为系统 Tag。