我有一个小错误,不知道在哪里或如何调试。我有一个cron任务,它在生产中运行,但总是在一个方法上停止或卡住。在当地的环境中,它就像一个魅力,但不是刺激。这是我的代码:
$stores = Mage::app()->getStores();
foreach ($stores as $store) {
if ($store->getIsActive()) {
Mage::log("store ID " . $store->getId() . ": " . $store->getCode(), null, 'myextension.log');
// call update check
Mage::log( "before runUpdateCheck()", null, 'myextension.log');
$update_done = Mage::helper('privacypolicy/service')->runUpdateCheck($store);
Mage::log( "after runUpdateCheck()", null, 'myextension.log');
if ($update_done AND ! $updated) {
$updated = true;
}
}
Mage::log('Cron: Update check finished', null, 'myextension.log');
}
所以它一直有效,直到$update_done = Mage::helper('privacypolicy/avalexapiservice')->runUpdateCheck($store);
然后一切都没发生试图在此方法中添加日志记录。没啥事儿。
正如我上面提到的 - 在本地它运作正常。不知道如何在prod上修复它。
我自己解决了这个问题。问题出在PHP版本中。在5.5之前,更新到7.2并解决了这个问题。