3

Magento cron 式に問題があります。分で問題なく動作します:

    <crontab>
    <jobs>
        <namespace_module_cron>
            <schedule>
                <cron_expr>*/15 * * * *</cron_expr>
            </schedule>
            <run>
                <model>namespace_module/observer::myMethod</model>
            </run>
        </namespace_module_cron>
    </jobs>
</crontab>

しかし、時間を設定すると機能しません:

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

また

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

管理パネルで別の時間設定を試しました。今のところ、次のとおりです。

  • 15
  • 1
  • 60
  • 120
  • 120
  • 3000

PSマジェントver. 1.7.0.1

アップデート

1 時間ごとのジョブ (0 */1 * * *) を 1 日に残しましたが、実際に実行されます。

  • 14:15
  • 16:15
  • 21:15
  • 22:15
  • 03:15
  • 04:15
4

4 に答える 4

4

私は何が間違っていたかを理解しました。設定(システム/構成/システム/クロン)でした。「Schedule Ahead for」を 60に設定すると、適切に機能し始めました (毎時および毎日のスケジュール)。今のところ、データベースのスケジュールは、16:00 に実行する必要があるときに 15:20 に表示されます。

設定:

  • スケジュールを生成する間隔: 15
  • 予定: 60
  • 範囲内で実行されない場合は失敗: 60
  • 履歴のクリーンアップ間隔: 120
  • 成功履歴の有効期間: 120
  • 障害履歴の寿命: 3000

同じ問題がある場合は、最初の 2 つの設定に注意を払う必要があります。

于 2012-10-29T15:21:20.893 に答える
1

私はトウモロコシの仕事をこのように定義しました。03 16 * * *

cron.php が 16:02 に実行されると、データベース テーブル cron_schedule にこの cron ジョブに関するエントリのみが作成され、cron ジョブは実行されません。この cron ジョブを実行するには、cron.php を 2 回実行する必要があります。つまり、テーブルにエントリを作成した後、15 分以内に cron を実行する必要があります。そうしないと、そのエントリは無視されます。したがって、cron ジョブを実行するには、定期的に cron.php を実行する必要があります。

私のcronジョブは毎日16:03に実行され、10分ごとにcron.phpを実行します

于 2012-10-25T13:16:45.963 に答える
1

毎時 0 分 (00:00、01:00、02:00 など) には、以下を入力する必要があります。

<cron_expr>0 * * * *</cron_expr>
于 2012-10-24T12:22:25.873 に答える
1

これは古いことは知っていますが、似たようなものに遭遇したので、まだ関連している可能性があります. サーバーで cron.sh を実行するようにスケジュールされている頻度。スケジューラが60分ごとに設定され、正時に実行され(午後12時、午後1時、午後2時など)、スケジュールされた事前時間が20分に設定されている場合(デフォルトだと思います)、magento cron式は、たとえば、30 * * * *、または 30 分の 1 時間ごとに、ジョブは決して実行されません。cron.sh は最大 20 分先まで magento cron ジョブのみを設定するため、12:30 のジョブはスケジュールされませんが、magento の cron.sh は正時に実行されるように設定されているため、スケジュールされることはありません。Magento cronをスケジュールする必要がある時間を過ぎて「スケジュールされた」時間を調整すると、このような問題が修正されるため、元の問題は似ていると思われます。同様に注意すべきことだけです。

于 2013-09-04T18:24:02.000 に答える