スクリプトを使用してapschedulerを使用してスケジューラにジョブを追加しています。残念ながら、スケジューラを起動していないため、スクリプトを使用するとジョブが適切にスケジュールされません。
scheduler = self.getscheduler() # initializes and returns scheduler
scheduler.add_job(trigger=trigger, func = function, jobstore = 'mongo') #sample code. Note that I did not call scheduler.start()
次のメッセージが表示されます。apscheduler.scheduler - INFO - Adding job tentatively -- it will be properly scheduled when the scheduler starts
スクリプトはスケジューラにジョブを追加することになっています (その特定のインスタンスでスケジューラを実行するのではありません)。データベースに追加されたジョブのイベントに追加される他の情報があります。スケジューラーを実際に実行せずに、ジョブを追加してスケジューラーに強制的にジョブストアに追加させることはできますか?
各ジョブの追加後にスケジューラを起動およびシャットダウンして、スケジューラにジョブ情報をジョブストアに保存させることができることを私は知っています。それは本当に良いアプローチですか?
編集:私の当初の意図は、ソフトウェアの初期化プロセスを分離することでした。まだ開始されていないスケジューラにいくつかのジョブを追加したかっただけです。本当の問題は、ユーザーがスケジューラを開始および停止する許可を与えたことです。システムに実行中のスケジューラのインスタンスがあるかどうかは保証できません。ジョブの追加後にスケジューラを起動してシャットダウンすることで、問題を一時的に修正しました。できます。