对于计划中的任务,但没有链接的任务,我在启动Adobe 10服务(在exception.log上)时,会在我的exception.log中得到以下错误。如何将此故障排除回错误的根源?
"Error","DefaultQuartzScheduler_Worker-2","09/15/14","15:12:02",,"Task invokehandler could not be chained"
java.lang.Exception: Task invokehandler could not be chained
at coldfusion.scheduling.CronTask.onCompleteTask(CronTask.java:214)
at coldfusion.scheduling.CronTask.execute(CronTask.java:130)
at org.quartz.core.JobRunShell.run(JobRunShell.java:213)注意:我得到了三个几乎相同的错误,唯一的区别是上面的错误中写着"Worker-2“,我还得到了”职工-1“和”工人-3“。
发布于 2014-09-16 12:39:44
这里有几件事你可以做。您可以编写一个ColdFusion页面,检查计划任务的运行情况,并手动监视该页面(Check health of scheduled tasks)。当然,代码本身也可以是一个预定的任务。或者,您可以在不同的点将日志记录添加到您的计划任务中,以“查看”他们正在做的事情。我更喜欢后者。
对于最简单的日志记录,您可以在ColdFusion管理员的日志设置页下检查“启用计划任务日志记录”。这将创建一个名为scheduler.log的新日志文件。此选项将报告任务何时启动、何时结束、错误等。但此日志仍然只包含通用信息,如用于执行任务的任务名称和线程名称。这本身可能对您没有多大帮助,但它将告诉您哪个线程正在运行哪个任务。
有关更详细的信息,您需要在计划的任务代码中添加自己的日志记录。在代码执行期间,我通常将日志代码放在主要位置;“已启动”、“检索数据”、“更新数据库”、“写入文件”、“已完成”等。然后,每当您需要检查任务发生了什么时,您只需阅读日志文件即可查看。
下面是一些示例代码:
<cftry>
<cflog file="your_file_name" type="information" text="Starting scheduled job xyz">
... code ...
<cflog file="your_file_name" type="information" text="Step 123">
... code ...
<cflog file="your_file_name" type="information" text="Step 456">
... code ...
<cflog file="your_file_name" type="information" text="Scheduled job xyz finished successfully">
<cfcatch type="any">
<cflog file="your_file_name" type="error" text="Error: #cfcatch.Type#, #cfcatch.Message#, #cfcatch.Detail#">
<!--- I usually send an email to myself for errors as well using <cfmail ... /> --->
</cfcatch>
</cftry>这是到 tag的链接。
发布于 2015-10-07 15:11:08
我发现在使用迁移向导升级到更新的ColdFusion版本之后,无法在异常日志中链接的相同错误。这似乎是由于在预定任务导入期间插入了文本Invoke处理程序造成的。
通过以下步骤纠正此行为:
在编辑所有计划的任务后,此时应停止错误。
https://stackoverflow.com/questions/25855337
复制相似问题