This is an automated email from the ASF dual-hosted git repository.
nicholasjiang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/paimon-webui.git
The following commit(s) were added to refs/heads/main by this push:
new cf70ee66 [Improvement] Optimize job log (#419)
cf70ee66 is described below
commit cf70ee66325879b1e12c7a79f5c736d065492b06
Author: s7monk <[email protected]>
AuthorDate: Tue Jun 18 11:54:41 2024 +0800
[Improvement] Optimize job log (#419)
---
.../paimon/web/server/context/logtool/LogEntity.java | 18 ++++++++++++++----
.../apache/paimon/web/server/service/JobService.java | 8 +++++++-
.../paimon/web/server/service/impl/JobServiceImpl.java | 15 ++++++++++++---
3 files changed, 33 insertions(+), 8 deletions(-)
diff --git
a/paimon-web-server/src/main/java/org/apache/paimon/web/server/context/logtool/LogEntity.java
b/paimon-web-server/src/main/java/org/apache/paimon/web/server/context/logtool/LogEntity.java
index 829e7288..794c74b1 100644
---
a/paimon-web-server/src/main/java/org/apache/paimon/web/server/context/logtool/LogEntity.java
+++
b/paimon-web-server/src/main/java/org/apache/paimon/web/server/context/logtool/LogEntity.java
@@ -18,6 +18,8 @@
package org.apache.paimon.web.server.context.logtool;
+import org.apache.paimon.web.server.util.LocalDateTimeUtil;
+
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
@@ -115,7 +117,9 @@ public class LogEntity {
}
steps.get(stepIndex - 1).setEndTime(LocalDateTime.now());
String message =
- String.format("\n[%s] %s INFO: %s", type.getValue(),
LocalDateTime.now(), str);
+ String.format(
+ "\n[%s] INFO: %s",
+
LocalDateTimeUtil.getFormattedDateTime(LocalDateTime.now()), str);
steps.get(stepIndex - 1).appendInfo(message);
setStatus(LogStatus.FINISHED);
setEndTime(LocalDateTime.now());
@@ -128,7 +132,9 @@ public class LogEntity {
return;
}
String message =
- String.format("\n[%s] %s CONFIG: %s", type.getValue(),
LocalDateTime.now(), str);
+ String.format(
+ "\n[%s] CONFIG: %s",
+
LocalDateTimeUtil.getFormattedDateTime(LocalDateTime.now()), str);
steps.get(stepIndex - 1).appendInfo(message);
LogReadPool.write(message, userId);
}
@@ -138,7 +144,9 @@ public class LogEntity {
return;
}
String message =
- String.format("\n[%s] %s INFO: %s", type.getValue(),
LocalDateTime.now(), str);
+ String.format(
+ "\n[%s] INFO: %s",
+
LocalDateTimeUtil.getFormattedDateTime(LocalDateTime.now()), str);
steps.get(stepIndex - 1).appendInfo(message);
LogReadPool.write(message, userId);
}
@@ -164,7 +172,9 @@ public class LogEntity {
return;
}
String message =
- String.format("\n[%s] %s ERROR: %s", type.getValue(),
LocalDateTime.now(), str);
+ String.format(
+ "\n[%s] ERROR: %s",
+
LocalDateTimeUtil.getFormattedDateTime(LocalDateTime.now()), str);
steps.get(stepIndex - 1).appendInfo(message);
steps.get(stepIndex - 1).appendError(message);
LogReadPool.write(message, userId);
diff --git
a/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/JobService.java
b/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/JobService.java
index 7763c1c3..f453e57c 100644
---
a/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/JobService.java
+++
b/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/JobService.java
@@ -94,5 +94,11 @@ public interface JobService extends IService<JobInfo> {
*/
void refreshJobStatus(String taskType);
- public String getLogsByUserId(String userId);
+ /**
+ * Fetches log entries for a given user ID.
+ *
+ * @param userId the user's ID
+ * @return log entries as a string
+ */
+ String getLogsByUserId(String userId);
}
diff --git
a/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/impl/JobServiceImpl.java
b/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/impl/JobServiceImpl.java
index 9d29d576..6241db3a 100644
---
a/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/impl/JobServiceImpl.java
+++
b/paimon-web-server/src/main/java/org/apache/paimon/web/server/service/impl/JobServiceImpl.java
@@ -134,12 +134,18 @@ public class JobServiceImpl extends
ServiceImpl<JobMapper, JobInfo> implements J
try {
logWriter.start();
+ logWriter.info(
+ String.format(
+ "Starting to submit %s %s job...",
+ jobSubmitDTO.getTaskType(), executeMode));
ExecutionResult executionResult =
executor.executeSql(jobSubmitDTO.getStatements());
if (StringUtils.isNotBlank(executionResult.getJobId())) {
JobInfo jobInfo = buildJobInfo(executionResult, jobSubmitDTO);
this.save(jobInfo);
}
- logWriter.finish(String.format("Execute %s job finished.",
jobSubmitDTO.getTaskType()));
+ logWriter.finish(
+ String.format(
+ "Execution successful [Job ID: %s].",
executionResult.getJobId()));
historyService.saveHistory(
History.builder()
.name(LocalDateTimeUtil.getFormattedDateTime(LocalDateTime.now()))
@@ -249,8 +255,7 @@ public class JobServiceImpl extends ServiceImpl<JobMapper,
JobInfo> implements J
LogContextHolder.registerProcess(
LogEntity.init(LogType.UNKNOWN, getLoginIdAsString()));
try {
- logWriter.info(
- String.format("Initializing %s job config...",
stopJobDTO.getTaskType()));
+ logWriter.info(String.format("Starting to stop %s job...",
stopJobDTO.getTaskType()));
Executor executor = getExecutor(stopJobDTO.getClusterId(),
stopJobDTO.getTaskType());
if (executor == null) {
logWriter.error("No executor available for job stopping.");
@@ -271,6 +276,10 @@ public class JobServiceImpl extends ServiceImpl<JobMapper,
JobInfo> implements J
log.error(
"Failed to update job status in the database for
jobId: {}",
stopJobDTO.getJobId());
+ } else {
+ logWriter.info(
+ String.format(
+ "Successfully stopped job [Job ID: %s].",
stopJobDTO.getJobId()));
}
logWriter.finish();
} catch (Exception e) {