使用第三方库记录来自PHP应用程序的所有cURL请求

时间:2018-07-17 07:08:30

标签: php curl dll yii2

好的,我在PHP Yii2应用程序中遇到了困难。我需要记录应用程序中的每个传入和传出请求。传入请求可以很容易地在PHP本身中登录(在引导阶段添加一些处理程序),这很容易。

但是真正的问题是我正在使用许多第三方库(即Amazon MWS SDK,Ebay SDK,一些Guzzle请求等),并且我想记录所有带有错误响应的传出请求(出于调试/分析的原因)

是否甚至可以更改curl中的某些设置以记录这些请求?我的意思是curl是否支持php.ini [curl]中用于记录内容的某些设置。否则,是否存在php_curl.dll的源,您可以进行一些更改以写入日志并进行编译。或者至少为应用程序中的所有curl请求添加一些处理程序,而无需更改/复制第三方SDK。

我已经搜索了这个问题,并找到了诸如tcpdump或wireshark的解决方案来嗅探某些数据包,但是在curl方面真的没有解决方案来实现日志记录吗?

感谢您的关注

1 个答案:

答案 0 :(得分:1)

不,您不能在.ini中设置它

但是,如果您可以编辑php curl运行的代码,则可以使用两个URL CURLOPT_VERBOSE和CURLOPT_STDERR

http://php.net/manual/en/function.curl-setopt.php

CURLOPT_VERBOSE-打开显示详细信息。 CURLOPT_STDERR-日志的输出句柄

所以您的代码将类似于

outputDataSet.write().mode(SaveMode.Append).insertInto("ABC");

其中 $ ch -curl_init返回的cURL句柄。还有 $ PathToLog -带有“ / var / log”

这样的日志的目录路径
相关问题