どのようにリスト予定の業務と最後の実行結果ColdFusion?
-
22-09-2019 - |
質問
いけようという試みも始めていダッシュボード当社のcronジョブ----CF、Java、SQLServer。できるように見合った実験の結果、がんの予定です。
はしてもらえると助かりますのCFAdmin APIや非正規滞在 <cfschedule>
フレキシビリティの一覧を取得します:
- どの作業を予定?
- その最後の実行時に大きい数。
- かったで成功する?
- がでの予定です。
今現在CF8、アップグレードしCF9内にあります。
解決
私はあなたのためにこれに少し研究をしました。私も、少なくともCF8にし、おそらくCF9で、まだ有効であるやや古いリファレンスを見つけます。
<cfobject type="JAVA" action="Create" name="factory" class="coldfusion.server.ServiceFactory">
<cfset allTasks = factory.CronService.listAll()/>
<cfloop index="i" from="1" to="#ArrayLen(allTasks)#">
<cfdump var="#allTasks[i]#" />
</cfloop>
http://www.bpurcell.org/blog/indexから.CFM?モード=エントリー&ENTRY = 935 の
これは、あなたの質問#1と#4を答えます。 #3については、それへの答えはあり得ません。 ColdFusionのスケジュールされたタスクのエンジンは、単に所定の時刻に指定されたURLをアップロードしています。そこには成功はありませんか失敗 - 。それは単にHTTPリクエストを行います。
希望このことができます。
他のヒント
ジョブの結果を「公開」することが可能です。 HTTPリクエストからの応答は、ファイルサーバに書き込むことができ、それが最後に実行ジョブの値を持つことになります。
<cfschedule action = "update"
task = "TaskName"
operation = "HTTPRequest"
url = "/index.cfm?action=task"
startDate = "#STARTDATE#"
startTime = "12:00:00 AM"
interval = "Daily"
resolveURL = "NO"
requestTimeOut = "600"
publish = "yes"
path = "#PATH#"
file = "log_file.log">
あなたが望んでいた場合は、次に、あなたは、データベースに対してログを確認することができます。それはページからの応答であるので、あなたにもここまで来るとストアエラーと警告することができます。
@ericコルブは権利である - それは、プログラムでそれを行う方法です。あなたがリストどのように反応するかをより細かく制御したい場合は、次のコード(基本的に同じですが、CFScriptでの)を試してください:
<cfscript>
scheduledTasksArray=ArrayNew(1);
taskService=createobject('java','coldfusion.server.ServiceFactory').getCronService();
scheduledTasksArray=taskservice.listall();
また、#2、#3を(あなたが右のそれをすれば、かなりちょうど1つの2部構成の問題である)に答えるために: タスクが実行されると、言って右上部にある自分にメールを送って「HEY!私が実行しているよ!!!!」その後、別のは、「HEY!私は終わりだ!」と言ってタスクのためのコードの下にある - あなたはそれが開始され、停止したとき(データベース過ぎる作品でこれをロギング)伝えるためにも、タイムスタンプに追加することができます。また、それは次に実行する時期を知るために、ちょうど最後の時間を見て、のServiceFactory呼び出しの結果から、「間隔」フィールドもらってバックを取ります。あなたは、私がこれによって何を意味するかについて、さらに説明が必要な場合は(、お気軽に。
希望あなたはすでに
に必要なものを考え出したていない場合は、このことができます