将Nginx访问日志采集到日志服务后,您可以通过查询和分析语句查看每分钟的访问PV。例如您想查看每10秒、60秒或600秒的访问PV,则可以添加变量类型的过滤器,避免多次修改查询和分析语句进行查询。本文以Nginx访问日志为例说明如何添加变量类型的过滤器。
前提条件
已采集Nginx访问日志。具体操作,请参见使用Nginx配置模式采集日志。
已创建索引。具体操作,请参见创建索引。
操作流程
为Nginx访问日志添加变量类型的过滤器的操作流程如下:
步骤一:查询和分析
通过查询和分析语句查看每分钟的访问PV的操作步骤如下:
登录日志服务控制台。
在Project列表区域,单击目标Project。
在控制台左侧,单击日志存储,在日志库列表中单击目标Logstore。
输入查询和分析语句,然后单击最近15分钟,设置查询和分析的时间范围。
例如,查看每分钟的访问PV的示例,其查询和分析语句如下:
* | SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
每分钟的访问PV以图表的形式显示。
步骤二:将统计图表添加到仪表盘
将每分钟的访问PV图表添加到Nginx访问日志仪表盘的操作如下:
在统计图表页签下,单击添加到仪表盘。
在添加到仪表盘对话框中,根据实际情况完成参数配置,单击确认。
关于仪表盘参数的说明,请参见添加统计图表(Pro版本)到仪表盘或添加统计图表到仪表盘。
步骤三:设置变量
将查询与分析的时间间隔设置为变量的操作如下:
在左侧导航栏中,单击 。
在仪表盘列表,单击Nginx访问日志。
在Nginx访问日志页面的右上角,单击编辑,找到目标统计图表,选择 。
将查询和分析语句中的60修改为${{interval|60}},单击应用,然后单击确定。
其中
interval
为变量名,60为变量值。在此处定义变量后,您可以在添加过滤器时设置该变量的取值。如果此处直接使用${{interval}},会导致查询分析操作报错。替换前查询和分析语句为:
* | SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
替换后查询和分析语句为:
* | SELECT date_format(__time__ - __time__ % ${{interval|60}}, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
关于变量的更多信息,请参见变量。
步骤四:添加过滤器
根据设置的变量添加过滤器的操作步骤如下:
在Nginx访问日志页面的右上方,单击图标。
在过滤器面板中,完成以下设置,然后单击确定。
说明类型必须选择变量替换。
Key值必须为您在设置变量步骤中设置的变量,本文为interval。
静态列表项用于配置不同查询时长范围的变量值。
关于过滤器参数的说明,请参见添加过滤器。
调整页面布局,单击保存。
在保存仪表盘对话框,单击确认。
Nginx访问日志仪表盘显示时间间隔过滤器。
步骤五:验证结果
在Nginx访问日志页面的PV过滤器中,将interval设置为10,查询每10秒的访问PV。
该操作对应的查询和分析语句如下:
* | SELECT date_format(__time__ - __time__ % 10, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
Nginx访问日志仪表盘展示每10秒的访问PV。
在Nginx访问日志页面的PV过滤器中,将interval设置为60,查询每60秒的访问PV。
该操作对应的查询和分析语句如下:
* | SELECT date_format(__time__ - __time__ % 60, '%H:%i:%s') as time, count(1) as count GROUP BY time ORDER BY time
Nginx访问日志仪表盘展示每60秒的访问PV。