私は2つのモジュール/サービスを持っていて、それぞれにはcron.xmlがあります。これらのうちの1つだけが実行されているように見えますが、もう1つは失敗しませんが、エンドポイントは決してトリガーされません(ログには表示されません)。Cron per Service/Module(AppEngine)
プロジェクトあたり1 cronの制限がありますか?モジュールが相互依存しないようにcronを管理する最善の方法は何ですか?
私は2つのモジュール/サービスを持っていて、それぞれにはcron.xmlがあります。これらのうちの1つだけが実行されているように見えますが、もう1つは失敗しませんが、エンドポイントは決してトリガーされません(ログには表示されません)。Cron per Service/Module(AppEngine)
プロジェクトあたり1 cronの制限がありますか?モジュールが相互依存しないようにcronを管理する最善の方法は何ですか?
cron.yaml
は、アプリレベルの設定ファイルではなく、サービス/モジュールです。つまり、あるモジュールにあるものをデプロイすると、もう一方のモジュールからcronの設定を上書きします。
だから、すべてサービス/モジュールのジョブのconfigsを含む単一cron.yaml
ファイルを作成する必要があります。 @GAEファンが言及しているように、ジョブごとにtarget
の設定を追加する必要もあります。 もdispatch.yaml
ファイルを追加して、リクエストパスを再訪問/調整して、cronジョブ発行のリクエストが正しいサービス/モジュールになるようにする必要があります。
サービスレベルのデプロイcron.yaml
サービスのデプロイ時に暗黙的に行われることはありません。明示的にデプロイする必要があります。 Uploading cron jobs から:
:オプション2:
appcfg.py update_cron <app-directory>
が の残りのアプリケーションをアップロードすることなく、ただのcron設定を更新するだけで、あなたのcronのアップデートをアップロードし、次のコマンドを実行します。
多かれ少なかれ関連Q & As:
default以外のモジュールに送信するcronジョブ内のtarget: backend-module-name
パラメータを使用します。 cron.yaml
が1つだけ必要です。
アップデートを確認してください:appcfg.py update app.yaml backend_module.yaml cron.yaml