导读 | 本文章向大家介绍Apache 记录请求响应时间日志,主要包括Apache 记录请求响应时间日志使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。 |
在Apache2的中文手册中,是这样定义 %T 这个变量的。%T 处理完请求所花时间,以秒为单位。
在Apache2的英文文档中,定义如下:
%T the time taken to server the request, in seconds.
由此可见,这个时间表示的是服务器处理这个请求的总时间。 而不是Apache服务器解析PHP,并且输出的时间。因此,我们可以看到同样的一个页面,网速比较慢的用户访问时间会长,而网速较快的用户访问,则时间比较短。
%T记录的是以秒为单位的时间,这对于我们来说是不太够的。因为很多情况下,我们需要保证我们网页的响应速度在1秒以内。从Apache 2.0 开始,提供了一个新的参数 %D。可以记录服务器处理请求的微秒时间(注意和%T的定义不同)。
我在服务器上做了一次测试,代码中嵌入了一个执行时间的检查判断,同时监视日志文件中产生的时间。结果为:页面监测脚本执行时间为10009206毫秒,而日志中记录的是10009838,两者时间并不一样,日志中记录的时间稍微长一些,包含了DNS查询等一系列的过程。找到apache配置文件
netstat -nap | grep 80 # 找到对应端口进程 31114 tcp6 0 0 :::4430 :::* LISTEN 31114/httpd ps auxf | grep 31114 # 找到对应apache的进程中的配置文件*.conf的路径,到指定路径修改配置文件,例如 vim httpd.conf
修改指定端口下的VirtualHost
<VirtualHost 80> ....... CustomLog "/var/prof.log" "[%a]%{%F %T}t id=%{APIIndex}i time=%D(us) url=%U%q" </VirtualHost> 指令: CustomLog "/var/prof.log" "[%a]%{%F %T}t id=%{APIIndex}i time=%D(us) url=%U%q" %D - 官方解释:Time taken to process the request, in millis,处理请求的时间,以微秒为单位 %T - 官方解释:Time taken to process the request, in seconds,处理请求的时间,以秒为单位 %{ms}T - 官方解释:Time taken to commit the response, in millis,提交响应的时间,以毫秒为单位
修改后重启apache,观察日志输出数据如下:
[200.200.222.95]2021-12-04 15:39:32 id=- time=100107(us) url=/apps/secvisual/home/home/on_dev_manage [200.200.222.95]2021-12-04 15:39:38 id=- time=106476(us) url=/apps/secvisual/home/home/on_dev_manage [200.200.222.95]2021-12-04 15:39:43 id=- time=101263(us) url=/apps/secvisual/home/home/on_dev_manage [200.200.222.95]2021-12-04 15:39:48 id=- time=101333(us) url=/apps/secvisual/home/home/on_dev_manage
原文来自:
本文地址://gulass.cn/apache-recode-time.html编辑:问题终结者,审核员:逄增宝
Linux大全:
Linux系统大全: