This is an automated email from the ASF dual-hosted git repository.

dockerzhang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/inlong.git


The following commit(s) were added to refs/heads/master by this push:
     new bc6a0ccc58 [INLONG-9860][Manager] Manager client supports querying 
workflow logs (#9861)
bc6a0ccc58 is described below

commit bc6a0ccc58ff38e35911171748f44fa885e247f1
Author: fuweng11 <76141879+fuwen...@users.noreply.github.com>
AuthorDate: Thu Mar 21 16:38:20 2024 +0800

    [INLONG-9860][Manager] Manager client supports querying workflow logs 
(#9861)
---
 .../client/api/inner/client/WorkflowClient.java     | 21 +++++++++++++++++++++
 .../manager/client/api/service/WorkflowApi.java     |  4 ++++
 .../resources/mappers/StreamSourceEntityMapper.xml  | 20 +++++++-------------
 .../inlong/manager/pojo/group/InlongGroupInfo.java  |  3 +++
 .../service/node/AbstractDataNodeOperator.java      |  2 +-
 .../manager/service/node/DataNodeOperator.java      |  4 ++--
 .../service/node/mysql/MySQLDataNodeOperator.java   |  6 +++---
 7 files changed, 41 insertions(+), 19 deletions(-)

diff --git 
a/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/inner/client/WorkflowClient.java
 
b/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/inner/client/WorkflowClient.java
index 7c503df7c5..ec5a13532c 100644
--- 
a/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/inner/client/WorkflowClient.java
+++ 
b/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/inner/client/WorkflowClient.java
@@ -27,8 +27,10 @@ import org.apache.inlong.manager.pojo.common.Response;
 import org.apache.inlong.manager.pojo.workflow.ProcessDetailResponse;
 import org.apache.inlong.manager.pojo.workflow.ProcessRequest;
 import org.apache.inlong.manager.pojo.workflow.ProcessResponse;
+import org.apache.inlong.manager.pojo.workflow.TaskLogRequest;
 import org.apache.inlong.manager.pojo.workflow.TaskRequest;
 import org.apache.inlong.manager.pojo.workflow.TaskResponse;
+import org.apache.inlong.manager.pojo.workflow.WorkflowExecuteLog;
 import org.apache.inlong.manager.pojo.workflow.WorkflowOperationRequest;
 import org.apache.inlong.manager.pojo.workflow.WorkflowResult;
 import 
org.apache.inlong.manager.pojo.workflow.form.process.ApplyGroupProcessForm;
@@ -211,4 +213,23 @@ public class WorkflowClient {
         return response.getData();
     }
 
+    /**
+     * Get workflow execute log list
+     *
+     * @param request workflow log query request
+     * @return workflow execute log response list
+     */
+    public PageResult<WorkflowExecuteLog> listTaskLogs(TaskLogRequest request) 
{
+        Preconditions.expectNotNull(request, "task request cannot be null");
+
+        Map<String, Object> requestMap = 
JsonUtils.OBJECT_MAPPER.convertValue(request,
+                new TypeReference<Map<String, Object>>() {
+                });
+        requestMap.entrySet().removeIf(entry -> 
Objects.isNull(entry.getValue()));
+        Response<PageResult<WorkflowExecuteLog>> response =
+                
ClientUtils.executeHttpCall(workflowApi.listTaskLogs(requestMap));
+        ClientUtils.assertRespSuccess(response);
+        return response.getData();
+    }
+
 }
diff --git 
a/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/service/WorkflowApi.java
 
b/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/service/WorkflowApi.java
index bd3ae81a41..0e1e4e051c 100644
--- 
a/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/service/WorkflowApi.java
+++ 
b/inlong-manager/manager-client/src/main/java/org/apache/inlong/manager/client/api/service/WorkflowApi.java
@@ -22,6 +22,7 @@ import org.apache.inlong.manager.pojo.common.Response;
 import org.apache.inlong.manager.pojo.workflow.ProcessDetailResponse;
 import org.apache.inlong.manager.pojo.workflow.ProcessResponse;
 import org.apache.inlong.manager.pojo.workflow.TaskResponse;
+import org.apache.inlong.manager.pojo.workflow.WorkflowExecuteLog;
 import org.apache.inlong.manager.pojo.workflow.WorkflowOperationRequest;
 import org.apache.inlong.manager.pojo.workflow.WorkflowResult;
 
@@ -67,4 +68,7 @@ public interface WorkflowApi {
     @GET("workflow/listTask")
     Call<Response<PageResult<TaskResponse>>> listTask(@QueryMap Map<String, 
Object> query);
 
+    @GET("workflow/listTaskLogs")
+    Call<Response<PageResult<WorkflowExecuteLog>>> listTaskLogs(@QueryMap 
Map<String, Object> query);
+
 }
diff --git 
a/inlong-manager/manager-dao/src/main/resources/mappers/StreamSourceEntityMapper.xml
 
b/inlong-manager/manager-dao/src/main/resources/mappers/StreamSourceEntityMapper.xml
index 479a241452..59d97d8a7f 100644
--- 
a/inlong-manager/manager-dao/src/main/resources/mappers/StreamSourceEntityMapper.xml
+++ 
b/inlong-manager/manager-dao/src/main/resources/mappers/StreamSourceEntityMapper.xml
@@ -321,25 +321,19 @@
         </where>
     </select>
     <select id="selectNeedUpdateIdsByClusterAndDataNode" 
resultType="java.lang.Integer">
-        select source.id
-        from stream_source source, inlong_stream stream, inlong_group 
inlong_group
+        select id
+        from stream_source
         <where>
-            source.is_deleted = 0
-            and inlong_group.inlong_group_id = source.inlong_group_id
-            and inlong_group.is_deleted = 0
-            and inlong_group.status in (120, 130)
-            and stream.inlong_group_id = source.inlong_group_id
-            and stream.is_deleted = 0
-            and stream.status in (120, 130)
-            and source.status not in (99, 110)
+            status not in (99, 110)
+            and is_deleted = 0
             <if test="clusterName != null">
-                and source.inlong_cluster_name = #{clusterName, 
jdbcType=VARCHAR}
+                and inlong_cluster_name = #{clusterName, jdbcType=VARCHAR}
             </if>
             <if test="nodeName != null">
-                and source.data_node_name = #{nodeName, jdbcType=VARCHAR}
+                and data_node_name = #{nodeName, jdbcType=VARCHAR}
             </if>
             <if test="sourceType != null">
-                and source.source_type = #{sourceType, jdbcType=VARCHAR}
+                and source_type = #{sourceType, jdbcType=VARCHAR}
             </if>
         </where>
     </select>
diff --git 
a/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/group/InlongGroupInfo.java
 
b/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/group/InlongGroupInfo.java
index 7c272d0911..5b3e730ed9 100644
--- 
a/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/group/InlongGroupInfo.java
+++ 
b/inlong-manager/manager-pojo/src/main/java/org/apache/inlong/manager/pojo/group/InlongGroupInfo.java
@@ -133,6 +133,9 @@ public abstract class InlongGroupInfo extends 
BaseInlongGroup {
     @ApiModelProperty(value = "Version number")
     private Integer version;
 
+    @ApiModelProperty(value = "Inlong tenant")
+    private String tenant;
+
     public abstract InlongGroupRequest genRequest();
 
 }
diff --git 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/AbstractDataNodeOperator.java
 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/AbstractDataNodeOperator.java
index 9426b24b0b..93028c063d 100644
--- 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/AbstractDataNodeOperator.java
+++ 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/AbstractDataNodeOperator.java
@@ -115,7 +115,7 @@ public abstract class AbstractDataNodeOperator implements 
DataNodeOperator {
     }
 
     @Override
-    public void updateRelatedStreamSource(DataNodeRequest request, 
DataNodeEntity oldEntity, String operator) {
+    public void updateRelatedStreamSource(DataNodeRequest request, 
DataNodeEntity dataNodeEntity, String operator) {
         LOGGER.info("do nothing for the data node type ={}", 
request.getType());
     }
 
diff --git 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/DataNodeOperator.java
 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/DataNodeOperator.java
index 1974b544aa..b6ccbaaa5c 100644
--- 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/DataNodeOperator.java
+++ 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/DataNodeOperator.java
@@ -83,9 +83,9 @@ public interface DataNodeOperator {
      * Update related stream source.
      *
      * @param request data node request
-     * @param oldEntity old data node entity
+     * @param dataNodeEntity data node entity
      * @param operator operator
      */
-    void updateRelatedStreamSource(DataNodeRequest request, DataNodeEntity 
oldEntity, String operator);
+    void updateRelatedStreamSource(DataNodeRequest request, DataNodeEntity 
dataNodeEntity, String operator);
 
 }
diff --git 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/mysql/MySQLDataNodeOperator.java
 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/mysql/MySQLDataNodeOperator.java
index f55699febc..e9b3f002fd 100644
--- 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/mysql/MySQLDataNodeOperator.java
+++ 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/node/mysql/MySQLDataNodeOperator.java
@@ -110,15 +110,15 @@ public class MySQLDataNodeOperator extends 
AbstractDataNodeOperator {
     }
 
     @Override
-    public void updateRelatedStreamSource(DataNodeRequest request, 
DataNodeEntity oldEntity, String operator) {
+    public void updateRelatedStreamSource(DataNodeRequest request, 
DataNodeEntity dataNodeEntity, String operator) {
         MySQLDataNodeRequest nodeRequest = (MySQLDataNodeRequest) request;
-        MySQLDataNodeInfo nodeInfo = (MySQLDataNodeInfo) 
this.getFromEntity(oldEntity);
+        MySQLDataNodeInfo nodeInfo = (MySQLDataNodeInfo) 
this.getFromEntity(dataNodeEntity);
         boolean changed = !Objects.equals(nodeRequest.getUrl(), 
nodeInfo.getUrl())
                 || !Objects.equals(nodeRequest.getBackupUrl(), 
nodeInfo.getBackupUrl())
                 || !Objects.equals(nodeRequest.getUsername(), 
nodeInfo.getUsername())
                 || !Objects.equals(nodeRequest.getToken(), 
nodeInfo.getToken());
         if (changed) {
-            retryStreamSourceByDataNodeNameAndType(request.getName(), 
SourceType.MYSQL_SQL, operator);
+            retryStreamSourceByDataNodeNameAndType(dataNodeEntity.getName(), 
SourceType.MYSQL_SQL, operator);
         }
     }
 

Reply via email to