如何监控cURL调用

我有一个基于PHP的CMS,它向服务提供者(一个基于java的ECM(企业内容pipe理))提出请求,这个ECM与我的PHP位于同一个服务器上,并将响应插入到mysql中。

最初以好的速度开始的速度慢慢地降低到原始数据获取的1/10,并且插入速度,我使用logging的计数来检查。 我遇到了麻烦,找出退化的原因,并且需要findcURL请求是否在生成响应(如XML)的ECM端被延迟,或者响应返回到PHP端。 数据库(mysql)的服务器负载没有变化,我有我自己的理由相信它不能解决数据库优化问题。

我真正想要做的是知道是否有跟踪请求正在做什么,当他们到达ECM时,当给出的响应,当它再次到达PHP(每个cURL调用的活动的总和)。 我检查了我的apache访问日志,如果他们被logging为GETPOST请求,但无法find它们。 代码级别唯一的select是设置一个详细的,但我不知道结果是多么有用。 因此,希望知道相同的可能的select。

您可以捕获进程的数据包(使用tcpdump或wireshark),稍后分析它以查看每个http事务需要多less时间。 请记住,您也可以为127.0.0.1接口进行数据包转储,因为如果请求正在完成到本地主机,则可能需要该数据包转储。

为了看到curl请求,你可以为curl请求提供一个特定的用户代理,然后在apache日志中查找来自该用户代理的请求。