PVをツイートするサービスでAzure Schedulerを使っていましたが、もっとお手軽に(お安く)WebJobsの定期実行を行いたいと思ってました。 そこで約1年遅れですが、しばやんがブログに書いていたWeb Appsでのスケジュール実行を試してみました。
設定方法
詳しいことはしばやんのブログを見て下さい。Always Onに設定しておく必要があるので、Free等のプランでは設定できません。
setting.jobの例
{
"schedule": "0 */5 * * * *"
}
設定の確認
設定が出来ているかどうかは
https://{サイト名}.scm.azurewebsites.net/api/triggeredwebjobs/{ジョブ名}
で確認できます。{ジョブ名}を省略するとそのサイトに登録されている全てのWebJobsを確認できます。
確認例
[
{
"latest_run": {
"id": "201605241950001257",
"name": "201605241950001257",
"status": "Success",
"start_time": "2016-05-24T19:50:00.1257072Z",
"end_time": "2016-05-24T19:50:11.1532556Z",
"duration": "00:00:11.0275484",
"output_url": "https://samplewebapps.scm.azurewebsites.net/vfs/data/jobs/triggered/SampleJob/201605241950001257/output_log.txt",
"error_url": null,
"url": "https://samplewebapps.scm.azurewebsites.net/api/triggeredwebjobs/SampleJob/history/201605241950001257",
"job_name": "SampleJob",
"trigger": "Schedule - 0 0,5,10,15,20,25,30,35,40,45,50,55 * * * *"
},
"history_url": "https://samplewebapps.scm.azurewebsites.net/api/triggeredwebjobs/SampleJob/history",
"scheduler_logs_url": "https://samplewebapps.scm.azurewebsites.net/vfs/data/jobs/triggered/SampleJob/job_scheduler.log",
"name": "SampleJob",
"run_command": "TweetPvService.SampleJob.exe",
"url": "https://samplewebapps.scm.azurewebsites.net/api/triggeredwebjobs/SampleJob",
"extra_info_url": "https://samplewebapps.scm.azurewebsites.net/azurejobs/#/jobs/triggered/SampleJob",
"type": "triggered",
"error": null,
"using_sdk": false,
"settings": {
"schedule": "0 */5 * * * *"
}
}
]
実行履歴
extra_info_url に書かれているURLから確認できます。いつものやつですね。
https://{サイト名}.scm.azurewebsites.net/azurejobs/#/jobs/triggered/{ジョブ名}

まとめ
これで、「Azure Schedulerに設定してたつもりになってたけど、認証の設定し忘れて起動時にエラーになっちゃった\(^o^)/」なんてこともなくりますね。
おしまい。