簡體   English   中英

magento cron job和cron_scheduler表

[英]magento cron job and cron_scheduler table

我制作了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> 

我還在服務器上設置了cronjob。 當cronjob運行時,magento中的所有cronjobs都存儲在數據庫表cron_schedule中,但不存儲在我的gcompany_runprofilescronjob中。 如果我設置不同的間隔,例如:

<cron_expr>*/1 * * * *</cron_expr>

我的cronjob寫在數據庫中,但每分鍾執行一次,我不想要......我希望我的功能每天都在23.55執行。 我有什么建議我做錯了嗎?

雖然這是一個非常古老的問題,但沒有找到正確的答案,所以讓我把它留給下一個人。

Magento的cron_schedule表只填充了計划在不久的將來運行的cron作業。 你沒有在表中看到你的cron工作的原因是因為它每天只運行一次,恰好是23:55。 Magento將在23:45左右將此cron作業添加到cron_schedule表中,具體取決於您在System > Configuration > System > Cron服務器cron作業配置和Magento的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作業,以檢查錯誤或異常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM