Skip to content

Commit 36a27f7

Browse files
committed
refactor(log):优化日志读取逻辑并修复潜在问题
- 使用 StringBuilder 替代 StringBuffer 提升性能- 采用 StandardCharsets.UTF_8 确保字符编码一致性 -优化行号判断逻辑,提升代码可读性- 移除冗余注释和无用代码片段-修复日志文件读取时的行数跳过逻辑 - 简化 LogResult 构造逻辑,移除不必要的注释块
1 parent 47b341b commit 36a27f7

File tree

2 files changed

+12
-22
lines changed

2 files changed

+12
-22
lines changed

xxl-job-core/src/main/java/com/xxl/job/core/context/XxlJobHelper.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ private static boolean logDetail(StackTraceElement callInfo, String appendLog) {
160160
// appendlog
161161
String logFileName = xxlJobContext.getJobLogFileName();
162162

163-
if (logFileName!=null && logFileName.trim().length()>0) {
163+
if (logFileName!=null && !logFileName.trim().isEmpty()) {
164164
XxlJobFileAppender.appendLog(logFileName, formatAppendLog);
165165
return true;
166166
} else {

xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java

Lines changed: 11 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -84,17 +84,16 @@ public static String makeLogFileName(Date triggerDate, long logId) {
8484
/**
8585
* append log
8686
*
87-
* @param logFileName
88-
* @param appendLog
87+
* @param logFileName log file name
88+
* @param appendLog append log
8989
*/
9090
public static void appendLog(String logFileName, String appendLog) {
9191

9292
// log file
93-
if (logFileName==null || logFileName.trim().length()==0) {
93+
if (logFileName==null || logFileName.trim().isEmpty()) {
9494
return;
9595
}
9696
File logFile = new File(logFileName);
97-
9897
if (!logFile.exists()) {
9998
try {
10099
logFile.createNewFile();
@@ -111,29 +110,20 @@ public static void appendLog(String logFileName, String appendLog) {
111110
appendLog += "\r\n";
112111

113112
// append file content
114-
FileOutputStream fos = null;
115-
try {
116-
fos = new FileOutputStream(logFile, true);
117-
fos.write(appendLog.getBytes("utf-8"));
118-
fos.flush();
119-
} catch (Exception e) {
120-
logger.error(e.getMessage(), e);
121-
} finally {
122-
if (fos != null) {
123-
try {
124-
fos.close();
125-
} catch (IOException e) {
126-
logger.error(e.getMessage(), e);
127-
}
128-
}
129-
}
113+
try (FileOutputStream fos = new FileOutputStream(logFile, true)) {
114+
fos.write(appendLog.getBytes(StandardCharsets.UTF_8));
115+
fos.flush();
116+
} catch (Exception e) {
117+
logger.error(e.getMessage(), e);
118+
}
130119

131120
}
132121

133122
/**
134123
* support read log-file
135124
*
136-
* @param logFileName
125+
* @param logFileName log file name
126+
* @param fromLineNum from line num
137127
* @return log content
138128
*/
139129
public static LogResult readLog(String logFileName, int fromLineNum){

0 commit comments

Comments
 (0)