MagentoAPI日志
有没有办法打开API调用的日志记录 我们有一个第三方应用程序在使用我们的商店时遇到问题,希望获得一些调试信息~我找过了,什么也没找到MagentoAPI日志,magento,Magento,有没有办法打开API调用的日志记录 我们有一个第三方应用程序在使用我们的商店时遇到问题,希望获得一些调试信息~我找过了,什么也没找到 我使用的是1.7,如果你是指simliar的一些简单后端设置的话 System -> Configuration -> Developer -> Debug -> Profiler -> Yes 通过这个,那么不,在Magento OOB中没有这样的功能 我建议使用PHP调试器和单步通过API调用第三方应用程序调用 或者在API调
我使用的是1.7,如果你是指simliar的一些简单后端设置的话
System -> Configuration -> Developer -> Debug -> Profiler -> Yes
通过这个,那么不,在Magento OOB中没有这样的功能
我建议使用PHP调试器和单步通过API调用第三方应用程序调用
或者在API调用旁边临时插入
Mage::log()
调用,记录感兴趣的数据,这样您就可以检查var/system.log
是否出错。一个真正好的解决方案是使用API代理。它不像听起来那么复杂。它只是一个PHP脚本,您可以将API调用指向它,而不是普通的API URL。
其思想是,它记录每个传入的API请求,然后再将其传递到普通的MagentoAPI。
它还记录响应,然后再将其传递回客户端
这里有一个现成的API,我过去曾用它来诊断许多API问题。
在一段受控的时间内,您可以像这样操作index.php: 将以下代码放在index.php末尾::run调用周围:
ob_start();
Mage::run($mageRunCode, $mageRunType);
if(preg_match('/api/', $_SERVER['REQUEST_URI'])) {
Mage::log('<<< request '.$_SERVER['REQUEST_METHOD'].': '.$_SERVER['REQUEST_URI'], null, 'api.log');
if($_SERVER['REQUEST_METHOD'] == 'POST') {
Mage::log('<<< '.file_get_contents('php://input'), null, 'api.log');
}
Mage::log('>>> '.ob_get_contents(), null, 'api.log');
}
ob_end_flush();
ob_start();
Mage::run($mageRunCode,$mageRunType);
if(preg_match('/api/',$_服务器['REQUEST_URI'])){
Mage::log('要求Magento开发人员重写app/code/core/Mage/Api/Model/Server/Handler/Abstract.php上的函数'call',用于临时用途,简单方法:如果调用Mage::log(),Api和创建操作之间有什么区别?@JosuaMarcelChrisano-恐怕我听不懂,抱歉。Mage::log()
只是一种用于将数据记录到日志文件中的静态方法。它只是记录数据,无论您是从操作内部调用它还是从API方法调用它,所做的工作都是一样的。