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) {

Reply via email to