Gas*_*per 6 php xml cron magento
我制作了magento模块,用于在csv文件中导出产品.现在我想每天23.55运行cronjob.我设置了config.xml,因为它是用magento cronjob wiki编写的.
我的代码:
<crontab>
<jobs>
<gcompany_runprofilescronjob>
<schedule>
<cron_expr>55 23 * * *</cron_expr>
</schedule>
<run>
<model>export/export_csv::runprofilescronjob</model>
</run>
</gcompany_runprofilescronjob>
</jobs>
</crontab>
Run Code Online (Sandbox Code Playgroud)
我还在服务器上设置了cronjob.当cronjob运行时,magento中的所有cronjobs都存储在数据库表cron_schedule中,但不存储在我的gcompany_runprofilescronjob中.如果我设置不同的间隔,例如:
<cron_expr>*/1 * * * *</cron_expr>
Run Code Online (Sandbox Code Playgroud)
我的cronjob写在数据库中,但每分钟执行一次,我不想要......我希望我的功能每天都在23.55执行.我有什么建议我做错了吗?
小智 7
虽然这是一个非常古老的问题,但没有找到正确的答案,所以让我把它留给下一个人.
Magento的cron_schedule
表只填充了计划在不久的将来运行的cron作业.你没有在表中看到你的cron工作的原因是因为它每天只运行一次,恰好是23:55.Magento将cron_schedule
在23:45左右将这个cron作业添加到表中,具体取决于您的服务器cron作业配置和Magento的cron作业设置System > Configuration > System > Cron
.记下Generate Schedules Every
和Schedule Ahead for
设置,它们定义了Magento生成计划的频率和前进距离.
我的第一步是安装 Fabrizio Branca 的AOE Scheduler 扩展。Fabrizio 的扩展具有“列表视图”功能,可以显示当前在 Magento 的 cron 中注册的所有 Cron 作业,以及它们计划运行的时间。它还允许您立即在浏览器中运行 cron 作业(非常适合调试 cron 作业),或安排作业立即执行。
如果您的 cron 作业没有出现在 AOE Scheduler 的列表视图中,则 cron 作业的配置存在问题。尝试清除配置缓存以确保 Magento 能够解析您的 config.xml 以获取最新更改。我假设您的 XML 节点位于 XML 文档层次结构中的适当位置,即直接位于<config>
节点下?
如果您的 cron 作业出现在列表视图中但仍未运行,请使用“生成计划”功能重新生成 cron 计划表。还可以尝试使用 AOE Scheduler 的“立即运行”功能手动运行 cron 作业来检查错误或异常。
归档时间: |
|
查看次数: |
19246 次 |
最近记录: |