监控启智智算任务状态

This commit is contained in:
zch 2026-03-21 10:49:14 +08:00
parent 724067f5e8
commit f2b1cb9cbe
3 changed files with 50 additions and 1 deletions

View File

@ -60,4 +60,9 @@ public interface ZSServiceVersionMapper {
* 查询所有runState为COMPLETED的版本列表
*/
List<ServiceVersionZs> queryAllComplList();
/**
* 查询所有runState为Running的版本列表
*/
List<ServiceVersionZs> queryAllRunList();
}

View File

@ -164,7 +164,7 @@ public class ServiceVersionStatusTask {
* 新增定时任务处理已完成的任务获取URL
*/
@Scheduled(cron = "0 * * * * ?") // 每分钟执行一次
public void executeServiceVersionUrlTask() {
public void executeSetUrl() {
try {
// 1. 调用queryAllComplList接口获取所有runState为COMPLETED且url为空的数据
List<ServiceVersionZs> completedVersions = serviceVersionMapper.queryAllComplList();
@ -200,6 +200,44 @@ public class ServiceVersionStatusTask {
}
}
/**
* 新增定时任务处理已完成的任务获取URL
*/
@Scheduled(cron = "0 * * * * ?") // 每分钟执行一次
public void executeServiceStatusChange() {
try {
// 1. 调用queryAllComplList接口获取所有runState为COMPLETED且url为空的数据
List<ServiceVersionZs> completedVersions = serviceVersionMapper.queryAllComplList();
if (completedVersions != null && !completedVersions.isEmpty()) {
for (ServiceVersionZs version : completedVersions) {
// 2. 过滤获取数据中的jobSetId字段
String jobSetId = version.getJobSetId();
if (jobSetId != null && !jobSetId.isEmpty()) {
try {
// 3. 调用远程接口获取状态和URL
String taskStatusUrl = zsServiceVersionUrl + "/api/v1/getTaskStatus";
Map<String, Object> taskStatusInfo = callGetTaskStatus(taskStatusUrl, jobSetId);
// 4. 如果url有值则将url写入对应的数据中然后更新数据库
if (taskStatusInfo != null) {
String status = taskStatusInfo.get("status").toString();
if ("STOPPED".equals(status)) {
version.setRunState(capitalizeFirstLetter(status));
serviceVersionMapper.updateVersion(version);
}
}
} catch (Exception e) {
logger.error("Error processing service version URL for jobSetId: {}", jobSetId, e);
}
}
}
}
} catch (Exception e) {
logger.error("Error executing service version URL task", e);
}
}
/**
* 将字符串转换为首字母大写的格式
* @param str 原始字符串

View File

@ -200,4 +200,10 @@
order by create_time desc
</select>
<select id="queryAllRunList" resultType="com.ruoyi.platform.domain.service.ServiceVersionZs">
<include refid="selectServiceVersionZsVo" />
where run_state = 'Running'
order by create_time desc
</select>
</mapper>