当前位置:首页 > 技术教程 > 正文内容

如何在 Apache 中记录请求处理时间?

卡卷网1年前 (2024-09-09)技术教程518

如何在 Apache 中记录请求处理时间?  第1张


如果你有一个 apache (2) web 服务器,你可能有一个 access.log 文件,它使用 “combined” 日志格式向你显示各种数据。让我们看看如何将处理时间包含到该日志文件中。

默认情况下,组合日志中的一行如下所示:

"GET /info-tech/ HTTP/1.1" 200 46482 "http://fplanque.com/info-tech/" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5"


请注意 IP 后面的 2 个短划线 - -。第一个选项表示“I could not identify the user using ident”,第二个选项表示“未执行用户身份验证”。

现在,让我们面对现实吧:你永远不会使用 ident 识别任何人。你的 apache conf 甚至可能不会尝试。那块田地是远古遗留下来的。因此,让我们用有用的东西替换第一个破折号,即:请求的处理时间!请注意,通过这样做,我们可以保持文件的全局结构相同,并且您可能正在使用的任何日志处理工具都不会受到影响。

因此,在您的 apache2.conf 文件中,查找以下行:

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined


并将其替换为:

LogFormat "%h %D %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined


(更具体地说,我们将第二个字段从 %l 更改为 %D)

现在,重新启动 apache 并查看您的日志!您的日志行现在应如下所示:

"GET /info-tech/ HTTP/1.1" 200 46482 "http://fplanque.com/info-tech/" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5"


96395 是以微秒为单位的时间。换句话说,处理请求需要 96 毫秒。请注意,根据 Apache 的 Send Buffer 是否填满,这可能包括将数据发送回请求方所需的时间,因此这在很大程度上取决于请求方的位置、缓冲区大小、使用的路由、MTU 大小、TCP 窗口大小等......

如果您通过不同的代理请求相同的 URL 并查看日志,则可能会看到重大变化。

快速提示:执行此操作时过滤日志的一种方法:

tail -f /some_path/access.log | grep "GET /info-tech/ HTTP"



扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/jiaocheng/2024/09/198.html

分享给朋友:

相关文章

typecho主题怎么安装,typecho主题安装教程

typecho主题怎么安装,typecho主题安装教程

typecho是一个轻量级的博客系统,和著名的wordpress系统一样,typecho也支持为你的博客安装插件,或者更换主题。...

zblog各个文件以及文件夹详细说明+zblog安装教程

zblog各个文件以及文件夹详细说明+zblog安装教程

安装: 安装文件包安装 在线安装程序 安装 我们一般提供以下两种安装方式: 使用安装文件包,将安装...

WordPress隐藏文章部分内容:需注册登录后可见的方法

WordPress隐藏文章部分内容:需注册登录后可见的方法

访问一些论坛网站在查看文章内容时会发现很多文章帖子尾部都有部分内容游客无法查看,需要注册登录或会员才能查看。wordpress如何实现代码实现这个功能呢?这种功能主要是内容对用户有需求,适合VIP会员,会员要注册登录才能访问,而注册需要邀请...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。