From 790cc8634812c3976eb53ca8dcee6c8f99626366 Mon Sep 17 00:00:00 2001 From: xuxueli <931591021@qq.com> Date: Sun, 23 Nov 2025 12:08:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6PR-3840=EF=BC=8C=E6=89=A7?= =?UTF-8?q?=E8=A1=8C=E5=99=A8=E6=94=AF=E6=8C=81=E9=80=9A=E8=BF=87XxlJobHel?= =?UTF-8?q?per=E8=8E=B7=E5=8F=96=E4=BB=BB=E5=8A=A1=E8=A7=A6=E5=8F=91?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=88=B3=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/XXL-JOB官方文档.md | 48 ++++++++++--------- .../main/resources/templates/biz/log.list.ftl | 25 ++++++++-- 2 files changed, 46 insertions(+), 27 deletions(-) diff --git a/doc/XXL-JOB官方文档.md b/doc/XXL-JOB官方文档.md index 94deff01..2dff8bd9 100644 --- a/doc/XXL-JOB官方文档.md +++ b/doc/XXL-JOB官方文档.md @@ -2611,23 +2611,28 @@ public void execute() { ### 7.41 版本 v3.3.0 Release Notes[规划中] - 1、【新增】执行器新增“任务扫描排除路径”配置项(xxl.job.executor.excludedpackage),任务扫描时忽略指定包路径下的任务; -- 2、【升级】调度中心UI框架升级,统一交互组件,支持多主题、多标签与局部渲染等,升级UI组件及性能; -- 3、【优化】执行器任务Bean扫描逻辑调整,优化懒加载Bean检测及过滤机制,避免提前初始化类问题; -- 4、【优化】调度时间轮组件强化,保障不重不漏:调度时间轮单刻度数据去重,避免极端情况下任务重复执行;时间轮转动时校验临近刻度,避免极端情况下遗漏刻度; -- 5、【优化】任务调度锁逻辑优化,事务SQL下沉至Mapper层统一管理,并增加测试用例,提升代码可读性以及可维护性; -- 6、【优化】调度快慢线程池默认配置上调,提升默认配置单机负载;调度预读任务数计算系数下调,降低事务颗粒度,提升性能及稳定性; -- 7、【优化】报表统计SQL优化,修复小概率情况下查询null值问题;报表初始化SQL优化,修复小概率情况增改竞争问题; -- 8、【优化】任务回调失败日志读写磁盘逻辑优化,解决极端情况下大文件读写内存问题; -- 9、【升级】Http通讯组件升级,基于接口代理方式重构通讯组件,提升组件性能及扩展性; -- 10、【重构】规范API交互协议,通用响应结构体调整为Response,调度中心API统一为Response封装数据; +- 2、【优化】执行器任务Bean扫描逻辑调整,优化懒加载Bean检测及过滤机制,避免提前初始化类问题; +- 3、【新增】合并PR-3840,执行器支持通过XxlJobHelper获取任务触发时间戳; +- 4、【升级】调度中心UI框架升级,统一交互组件,支持多主题、多标签与局部渲染等,升级UI组件及性能; +- 5、【优化】调度时间轮组件强化,保障不重不漏:调度时间轮单刻度数据去重,避免极端情况下任务重复执行;时间轮转动时校验临近刻度,避免极端情况下遗漏刻度; +- 6、【优化】调度任务锁逻辑优化,事务SQL下沉至Mapper层统一管理,并增加测试用例,提升代码可读性以及可维护性; +- 7、【优化】调度快慢线程池默认配置上调,提升默认配置单机负载;调度预读任务数计算系数下调,降低事务颗粒度,提升性能及稳定性; +- 8、【性能】调度中心调整资源加载逻辑,移除不必要的拦截器,提升页面加载性能; +- 9、【优化】优化日志列表页面展示逻辑,新增展示“日志ID”与“任务名称”信息; +- 10、【优化】报表统计SQL优化,修复小概率情况下查询null值问题;报表初始化SQL优化,修复小概率情况增改竞争问题; +- 11、【优化】优日志报告与清理逻辑,增加清理过期日志的异常捕获,避免线程异常退出; +- 12、【优化】任务回调失败日志读写磁盘逻辑优化,解决极端情况下大文件读写内存问题; +- 13、【升级】Http通讯组件升级,基于接口代理方式重构通讯组件,提升组件性能及扩展性; +- 14、【重构】规范API交互协议,通用响应结构体调整为Response,调度中心API统一为Response封装数据; (注意:响应结构体从ReturnT升级为Response,其中属性值“content”会调整为“data”,通过openapi交互场景需要关注) -- 11、【重构】调度过期策略、调度类型策略逻辑重构,代码组件化拆分并完善日志,提升健壮性及可维护性; -- 12、【重构】调度中心底层组件重构,组件初始化以及销毁逻辑统一处理,任务触发及和回调逻辑优化,避免资源泄漏风险; -- 13、【重构】调度中心底层组件模块化拆分,移除组件单例以及静态代码逻辑,提升组件可维护性; -- 14、【修复】脚本任务process销毁逻辑优化,解决风险情况下脚本进程无法终止问题; -- 15、【修复】合并PR-2369,修复脚本任务参数取值问题; -- 16、【性能】调度中心调整资源加载逻辑,移除不必要的拦截器,提升页面加载性能; -- 17、【强化】通用HTTP任务(httpJobHandler)强化,支持更丰富请求参数设置,完整参数示例如下: +- 15、【重构】调度过期策略、调度类型策略逻辑重构,代码组件化拆分并完善日志,提升健壮性及可维护性; +- 16、【重构】调度中心底层组件重构,组件初始化以及销毁逻辑统一处理,任务触发及和回调逻辑优化,避免资源泄漏风险; +- 17、【重构】调度中心底层组件模块化拆分,移除组件单例以及静态代码逻辑,提升组件可维护性; +- 18、【修复】脚本任务process销毁逻辑优化,解决风险情况下脚本进程无法终止问题; +- 19、【修复】合并PR-2369,修复脚本任务参数取值问题; +- 20、【新增】任务审计日志,记录任务操作敏感日志信息,如任务新建/更新/删除/启停/触发以及GLUE代码更新等,用于系统监控、审计和安全分析,可快速追溯异常行为以及定位排查问题等。 + (当前任务审计日志以Info级别输出在系统日志中,可通过关键词 "xxl-job operation log:" 检索过滤) +- 21、【强化】通用HTTP任务(httpJobHandler)强化,支持更丰富请求参数设置,完整参数示例如下:
完整参数示例参考: @@ -2652,16 +2657,13 @@ public void execute() { } ```
-- 18、【新增】任务审计日志,记录任务操作敏感日志信息,如任务新建/更新/删除/启停/触发以及GLUE代码更新等,用于系统监控、审计和安全分析,可快速追溯异常行为以及定位排查问题等。 - (当前任务审计日志以Info级别输出在系统日志中,可通过关键词 "xxl-job operation log:" 检索过滤) -- 19、【优化】调度组件日志完善,提升边界情况下问题定位效率; -- 20、【升级】升级多项maven依赖至较新版本,如 netty、groovy、springboot、spring-ai、dify、mybatis、xxl-sso 等; -- 21、【优化】优日志报告与清理逻辑,增加清理过期日志的异常捕获,避免线程异常退出; -- 22、【新增】合并PR-3840,支持执行器通过XxlJobHelper获取任务触发时间戳; +- 22、【优化】调度组件日志完善,提升边界情况下问题定位效率; +- 23、【升级】升级多项maven依赖至较新版本,如 netty、groovy、springboot、spring-ai、dify、mybatis、xxl-sso 等; + **备注:** a、本次升级数据模型向前兼容,v3.2.*版本可直接升级不需要进行数据库表调整; -b、本次升级针对客户端rollinglog依赖字段做规范约束,如不关注改功能 v2.4.* 及后续版本客户端不需要升级/可兼容,否则需要升级客户端版本; +b、本次升级针对客户端rollinglog依赖字段做规范约束,如不关注该功能 v2.4.* 及后续版本客户端不需要升级/可兼容,否则需要升级客户端版本; ### TODO LIST - 1、调度隔离:调度中心针对不同执行器,各自维护不同的调度和远程触发组件。 diff --git a/xxl-job-admin/src/main/resources/templates/biz/log.list.ftl b/xxl-job-admin/src/main/resources/templates/biz/log.list.ftl index f56d0e2b..f43c1ced 100644 --- a/xxl-job-admin/src/main/resources/templates/biz/log.list.ftl +++ b/xxl-job-admin/src/main/resources/templates/biz/log.list.ftl @@ -260,22 +260,39 @@ widthUnit: '%', align: 'center', valign: 'middle' - },{ - title: I18n.jobinfo_field_id, + }, + { + title: I18n.joblog_name + 'ID', + field: 'id', + width: '10', + widthUnit: '%', + align: 'left' + }, + { + title: I18n.jobinfo_job, field: 'jobId', width: '10', widthUnit: '%', align: 'left', formatter: function(value, row, index) { - // logTips + + // job show info + let jobDesc = $("#jobId").find("option[value='"+ row.jobId +"']").text(); + let jobShow = '['+ row.jobId +']' + jobDesc?jobDesc:''; + if (jobShow.length > 10) { + jobShow = jobShow.substr(0, 10) + '...'; + } + + // job logTips var temp = ''; temp += I18n.joblog_field_executorAddress + ':' + (row.executorAddress?row.executorAddress:''); if (row.executorHandler) { temp += "
JobHandler:" + row.executorHandler; } temp += '
'+ I18n.jobinfo_field_executorparam +':' + row.executorParam; + // build - return ''+ row.jobId +''+ temp +''; + return ''+ jobShow +''+ temp +''; } },{ title: I18n.joblog_field_triggerTime,