本节书摘来自华章计算机《Splunk智能运维实战》一书中的第2章,第2.7节,作者 [美]乔史·戴昆(Josh Diakun),保罗R.约翰逊(Paul R. Johnson),德莱克·默克(Derek Mock),译 宫鑫,康宁,刘法宗 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.7显示网页响应时间的统计数据
没人喜欢等待网页加载,我们当然也不希望我们的Web应用程序用户等待加载。在我们的Web访问日志中,有一个名为repsonse的字段,它记录了网页总加载时间,以毫秒表示。
本节将追踪过去一周内网页在一天中不同时间的平均加载时间。
做好准备
本节操作需要运行Splunk Enterprise服务器,导入和第1章相同的样本数据。我们已经很熟悉Splunk搜索栏和时间选择器了。
如何操作
按照下列步骤来搜索和计算过去一周的网页响应时间的统计数据。
登录Splunk服务器。选择“搜索和报表”应用程序。设定时间选择器为“过去7天”,在搜索栏输入下列搜索后单击搜索图标或按Enter键。
Splunk返回表格式列表,详细显示过去一周每六小时间隔的平均响应时间。
结果虽然很棒,但以列表格式显示很不形象。点击“可视化”标签,会看到数据以柱状图(默认)的形式呈现。点击图标上方的“柱状图”链接并选择“折线图”。Splunk会将数据以折线图的形式呈现,现在我们可以更清楚地看到一天内不同时间的平均响应时间。
单击“保存为”,选择“报表”,保存此次搜索结果。将报表命名为cp02_webpage_response_times并单击“保存”。在下一个页面,单击“继续编辑”,回到搜索。
工作原理
将搜索以段的形式分开。
更多内容
timechart命令提供了一些很好的功能。此类搜索可以进一步扩展来更形象地对比多个星期之间的数值,以便发现异常现象或其他问题。
按照行为分别显示网页响应时间
搜索可进一步细化,按照用户实施的行为分类获取平均响应时间的更多信息。这可能会查明哪些行为相较于其他行为响应较慢。比如可能想确保结账页面具有最快的加载时间。进行下列搜索,必须掌握1.8节,以便提取响应字段:
现在搜索网页事件,然后按页面(uri_field)计算平均时间。结果会显示多个栏目的表格,每一栏代表不同的网页。然后将其可视化为折线图,会看到同一图表中有许多不同的折线——非常酷!注意刚刚使用了非常高级的Splunk搜索命令foreach,这实质上是一种for类型的循环,它在表格中每一列字段循环,并将每个网页的平均时间从毫秒单位转变为秒,四舍五入到小数点后两位。
另参见