gpt4 book ai didi

java - 创建自定义计划作业监视器 ATG

转载 作者:行者123 更新时间:2023-12-01 11:00:49 25 4
gpt4 key购买 nike

我目前正在研究如何最终创建一个能够监视网站上运行的计划作业的 Web 应用程序。它基于ATG,我一直在研究很多 OOTB 组件,我认为我已经取得了一些成果,但我真的缺乏 ATG 知识,因为我是一名实习学生,只是真正了解它已经仔细观察了 1/2 个月了。

我当前的想法是通过扩展 SingletonSchedulableService 将我的自定义代码挂接到 performScheduledTask 中,但是所有当前的计划任务都扩展了 SingletonSchedulableService 并且进入每一个(30 多个)java 文件并更改它们听起来不是一个好主意吗?我真的不确定这一点。

以下代码是我希望使用预先存在的 performScheduledTask 添加我自己的代码来实现的效果的粗略想法。当调用 doScheduledTask 时,我会发送一条消息,说明它正在开始,当它完成时,查看是否有错误并发送一条合适的消息。

public void performScheduledTask(Scheduler scheduler, ScheduledJob job) {
boolean gotLock = false;

try {
gotLock = acquireLock();

if (gotLock) {
if (isLoggingDebug())

try {
startTime= getJobTime();
sendToStart(name, description, id, startTime);
doScheduledTask(scheduler, job);

} catch (Exception e){
errorMsg= e.getMessage();
}

if (mErrorMessage == null) {
endTime= getJobTime();
String msg= "This job completed successfully";
sendToSuccess(name, description, id, endTime, msg);
} else {
endtime = getJobTime();
sendToFail(name, description, id, endtime, msg);
}

} else if (isLoggingDebug())
logDebug("sleeping until next scheduled wakeup.");

} finally {
if (gotLock)
releaseLock();
}

}

我现在有点迷失,因为我从来没有完全自己完成过网络应用程序,更不用说将它挂接到这些预定的作业中,所以任何帮助将不胜感激。如果您需要任何额外信息,请告诉我。

最佳答案

那么您是否考虑过使用 dyn/admin以此目的?有一个页面可以访问http://<your-host-name:<port>/dyn/admin/nucleus/atg/dynamo/service/Scheduler其中有很多您正在寻找的信息。

此外,计划组件还内置了性能监视器,其中实现了方法 startOperationendOperation 。建议您考虑使用这些,而不是将您的代码挂接到 performScheduledTask() 中。方法。可以为计划组件上的属性启用/禁用性能监视器。

希望这有帮助。

关于java - 创建自定义计划作业监视器 ATG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33345723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com