使用CURL添加请求时间戳

时间:2016-03-26 05:34:55

标签: linux apache curl logging get

我正在一个小型LINUX项目中使用CURL和远程网站来计算请求延迟。

所以我创建了一个shell脚本来自动将GET请求发送到远程Apache Web服务器。在访问Apache的access.log时,我只找到了来自CURL的请求仅被apache收到的时间。

是否也可以将CURL请求的日期发送到apache服务器? (时间戳)

谢谢

1 个答案:

答案 0 :(得分:2)

如果我理解并且您想要测量curl所在的客户端延迟,则可以使用--write-out How do I measure request and response times at once using cURL?

服务器端,除非有人自定义日志,否则每次点击服务器都应该在access_log中记录日期和时间

::1 - - [25/Mar/2016:22:37:54 -0700] "GET / HTTP/1.1" 200 38

编辑:

好的,给定你想要的东西..不确定它会显示什么,因为请求需要几秒钟,而不同计算机上的时钟不一定相同。然而,要使用curl请求发送客户端的日期,您可以使用-A选项捕获时间戳并将其作为自定义用户代理的一部分发送。

e.g。如果在支持纳秒的unix bash shell中

curl -A `date +"[mycurltime:%Y-%m-%dT%H:%M:%S.%3N]"` "http://hostname/etc"

导致......

your.ip.addy - - [26/Mar/2016:16:52:54 -0700] "GET /etc HTTP/1.1" 200 7502 "-" "[mycurltime:2016-03-26T16:52:54.437]"