我想通过openkm服务器获取图像..所以我想让Observer每两分钟运行一次
我的config.xml
FlyonitImage/Openkm/etc/config.xml
<events>
<openkm_image_send>
<observers>
<flyonitimage_openkm_model_observer>
<type>singleton</type>
<class>Flyonitimage_Openkm_Model_Observer</class>
<method>sendimageopenkm</method>
</flyonitimage_openkm_model_observer>
</observers>
</openkm_image_send>
</events>
<crontab>
<jobs>
<openkm_image_send>
<schedule><cron_expr>*/2 * * * *</cron_expr></schedule>
<run><model>Flyonitimage_Openkm_Model/observer::sendimageopenkm</model></run>
</openkm_image_send>
</jobs>
</crontab>
且Observer.php
为FlyonitImage/Openkm/Model/Observer.php
<?php
class Flyonitimage_Openkm_Model_Observer
{
public function sendimageopenkm()
{
//this collection get all users which have birthday on today
Mage::log("nice to learn this ");
return $this;
}
}
但它没有显示任何日志..我会在制作日志后放入fetchimage代码..
由于
答案 0 :(得分:1)
run元素的值应为:
<run>
<model>module/model::method</model>
</run>
在你的情况下应该是:
<run>
<model>openkm/observer::sendimageopenkm</model>
</run>
只有在crontab中为位于Magento根目录中的cron.php文件设置条目时,这才有效。
如果你想在OS上设置cron之前进行测试,那么在浏览器中点击magento-root / cron.php。首次点击将在您的Magento cron计划表中创建条目。
然后在2分钟后再次点击相同的URL。这次你的工作将被执行。
由于
答案 1 :(得分:0)
通过将cron设置为
来调用上面的sendimageopenkm()函数2 * * * * / usr / bin / wget -q“ur path” (这里wget是linux中的内部浏览器)
答案 2 :(得分:0)
你正确设置了[magento-root] /cron.php吗?如果是,则每隔1分钟设置一次cronjob 或者您可以使用第三部分cronjob服务,例如:
- https://www.setcronjob.com/
- http://www.easycron.com/
- http://www.webcron.org/