Skip to content
项目
群组
代码片段
帮助
正在加载...
登录
切换导航
X
XXL-JOB
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
靳帅
XXL-JOB
Commits
c1ca3fbe
提交
c1ca3fbe
authored
8月 18, 2018
作者:
xuxueli
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
底层日志组件SimpleDateFormat线程安全问题修复;
上级
4c8190f6
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
45 行增加
和
15 行删除
+45
-15
XXL-JOB官方文档.md
doc/XXL-JOB官方文档.md
+12
-12
XxlJobLogger.java
...core/src/main/java/com/xxl/job/core/log/XxlJobLogger.java
+2
-3
DateUtil.java
...ob-core/src/main/java/com/xxl/job/core/util/DateUtil.java
+31
-0
没有找到文件。
doc/XXL-JOB官方文档.md
浏览文件 @
c1ca3fbe
...
@@ -1239,7 +1239,8 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
...
@@ -1239,7 +1239,8 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
-
23、执行器手动设置IP时取消绑定Host的操作,该IP仅供执行器注册使用;修复指定外网IP时无法绑定执行器Host的问题;
-
23、执行器手动设置IP时取消绑定Host的操作,该IP仅供执行器注册使用;修复指定外网IP时无法绑定执行器Host的问题;
-
24、取消父子任务不可重复的限制,支持循环任务触发等特殊场景;
-
24、取消父子任务不可重复的限制,支持循环任务触发等特殊场景;
-
25、任务调度备注中标注任务触发类型,如Cron触发、父任务触发、API触发等等,方便排查调度日志;
-
25、任务调度备注中标注任务触发类型,如Cron触发、父任务触发、API触发等等,方便排查调度日志;
-
26、【迭代中】分片任务失败重试优化,仅重试当前失败的分片;
-
26、底层日志组件SimpleDateFormat线程安全问题修复;
-
27、【迭代中】分片任务失败重试优化,仅重试当前失败的分片;
### TODO LIST
### TODO LIST
...
@@ -1255,17 +1256,16 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
...
@@ -1255,17 +1256,16 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
-
10、Bean模式任务,JobHandler自动从执行器中查询展示为下拉框,选择后自动填充任务名称等属性;
-
10、Bean模式任务,JobHandler自动从执行器中查询展示为下拉框,选择后自动填充任务名称等属性;
-
11、API事件触发类型任务(更类似MQ消息)支持"动态传参、延时消费";该类型任务不走Quartz,单独建立MQ消息表,调度中心竞争触发;待定,该功能与 XXL-MQ 冲突,该场景建议用后者;
-
11、API事件触发类型任务(更类似MQ消息)支持"动态传参、延时消费";该类型任务不走Quartz,单独建立MQ消息表,调度中心竞争触发;待定,该功能与 XXL-MQ 冲突,该场景建议用后者;
-
12、任务依赖增强,新增任务类型 "流程任务",流程节点可挂载普通类型任务,承担任务依赖功能。现有子任务模型取消;需要考虑任务依赖死循环问题;
-
12、任务依赖增强,新增任务类型 "流程任务",流程节点可挂载普通类型任务,承担任务依赖功能。现有子任务模型取消;需要考虑任务依赖死循环问题;
-
13、分片任务某一分片失败,支持分片转移;
-
13、调度中心触发任务后,先推送触发队列,异步触发,然后立即返回。降低quartz线程占用时长。
-
14、调度中心触发任务后,先推送触发队列,异步触发,然后立即返回。降低quartz线程占用时长。
-
14、任务告警逻辑调整:任务调度,以及任务回调失败时,均推送监控队列。后期考虑通过任务Log字段控制告警状态;
-
15、任务告警逻辑调整:任务调度,以及任务回调失败时,均推送监控队列。后期考虑通过任务Log字段控制告警状态;
-
15、新增任务默认运行状态,任务更新时运行状态保持不变;
-
16、新增任务默认运行状态,任务更新时运行状态保持不变;
-
16、提供多版本执行器:不依赖容器版本、不内嵌Jetty版本(通过配置executoraddress替换jetty通讯)等;
-
17、提供多版本执行器:不依赖容器版本、不内嵌Jetty版本(通过配置executoraddress替换jetty通讯)等;
-
17、注册中心支持扩展,除默认基于DB之外,支持扩展接入第三方注册中心如zk、eureka等;
-
18、注册中心支持扩展,除默认基于DB之外,支持扩展接入第三方注册中心如zk、eureka等;
-
18、流程任务,支持参数传递;
-
19、流程任务,支持参数传递;
-
19、SimpleTrigger 支持;
-
20、SimpleTrigger 支持;
-
20、支持通过API服务操作任务信息;
-
21、支持通过API服务操作任务信息;
-
21、调度线程池改为协程方式实现,大幅降低系统内存消耗;
-
22、调度线程池改为协程方式实现,大幅降低系统内存消耗;
-
22、API任务触发时支持动态传参;
-
23、API任务触发时支持动态传参;
## 七、其他
## 七、其他
...
...
xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobLogger.java
浏览文件 @
c1ca3fbe
package
com
.
xxl
.
job
.
core
.
log
;
package
com
.
xxl
.
job
.
core
.
log
;
import
com.xxl.job.core.util.DateUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.LoggerFactory
;
import
org.slf4j.helpers.FormattingTuple
;
import
org.slf4j.helpers.FormattingTuple
;
...
@@ -7,7 +8,6 @@ import org.slf4j.helpers.MessageFormatter;
...
@@ -7,7 +8,6 @@ import org.slf4j.helpers.MessageFormatter;
import
java.io.PrintWriter
;
import
java.io.PrintWriter
;
import
java.io.StringWriter
;
import
java.io.StringWriter
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.Date
;
/**
/**
...
@@ -15,7 +15,6 @@ import java.util.Date;
...
@@ -15,7 +15,6 @@ import java.util.Date;
*/
*/
public
class
XxlJobLogger
{
public
class
XxlJobLogger
{
private
static
Logger
logger
=
LoggerFactory
.
getLogger
(
"xxl-job logger"
);
private
static
Logger
logger
=
LoggerFactory
.
getLogger
(
"xxl-job logger"
);
private
static
SimpleDateFormat
xxlJobLoggerFormat
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
// TODO,concurrent issue
/**
/**
* append log
* append log
...
@@ -31,7 +30,7 @@ public class XxlJobLogger {
...
@@ -31,7 +30,7 @@ public class XxlJobLogger {
StackTraceElement callInfo = stackTraceElements[1];*/
StackTraceElement callInfo = stackTraceElements[1];*/
StringBuffer
stringBuffer
=
new
StringBuffer
();
StringBuffer
stringBuffer
=
new
StringBuffer
();
stringBuffer
.
append
(
xxlJobLoggerFormat
.
format
(
new
Date
())).
append
(
" "
)
stringBuffer
.
append
(
DateUtil
.
format
(
new
Date
())).
append
(
" "
)
.
append
(
"["
+
callInfo
.
getClassName
()
+
"#"
+
callInfo
.
getMethodName
()
+
"]"
).
append
(
"-"
)
.
append
(
"["
+
callInfo
.
getClassName
()
+
"#"
+
callInfo
.
getMethodName
()
+
"]"
).
append
(
"-"
)
.
append
(
"["
+
callInfo
.
getLineNumber
()
+
"]"
).
append
(
"-"
)
.
append
(
"["
+
callInfo
.
getLineNumber
()
+
"]"
).
append
(
"-"
)
.
append
(
"["
+
Thread
.
currentThread
().
getName
()
+
"]"
).
append
(
" "
)
.
append
(
"["
+
Thread
.
currentThread
().
getName
()
+
"]"
).
append
(
" "
)
...
...
xxl-job-core/src/main/java/com/xxl/job/core/util/DateUtil.java
0 → 100644
浏览文件 @
c1ca3fbe
package
com
.
xxl
.
job
.
core
.
util
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
/**
* date util
*
* @author xuxueli 2018-08-19 01:24:11
*/
public
class
DateUtil
{
private
static
final
String
DATE_FORMAT
=
"yyyy-MM-dd HH:mm:ss"
;
private
static
ThreadLocal
<
SimpleDateFormat
>
threadLocal
=
new
ThreadLocal
<
SimpleDateFormat
>()
{
@Override
protected
synchronized
SimpleDateFormat
initialValue
()
{
//return super.initialValue();
return
new
SimpleDateFormat
(
DATE_FORMAT
);
}
};
public
static
String
format
(
Date
date
)
{
return
threadLocal
.
get
().
format
(
date
);
}
public
static
Date
parse
(
String
textDate
)
throws
ParseException
{
return
threadLocal
.
get
().
parse
(
textDate
);
}
}
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论