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); } }