用于查询已触发的手动业务流程示例状态和名称等信息,包括运行中和运行完成的实例。

参数信息

参数名 类型 说明
projectName STRING 必选,工作空间名称。
dagId LONG 必选,手动业务流程实例ID。

代码说明

package MavenDemo.MavenDemo;

import org.junit.Test;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.dataworks_public.model.v20180601.SearchManualDagNodeInstanceRequest;
import com.aliyuncs.dataworks_public.model.v20180601.SearchManualDagNodeInstanceResponse;
import com.aliyuncs.dataworks_public.model.v20180601.SearchManualDagNodeInstanceResponse.NodeInsInfo;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.http.ProtocolType;
import com.aliyuncs.profile.DefaultProfile;
import com.sun.xml.bind.v2.schemagen.xmlschema.List;

public class check_sdk {
  public static void main(String[] args) {
  }
  @Test
  public void searchManualDagNodeInstanceTest() throws ClientException {
    DefaultProfile.addEndpoint(
      "cn-shanghai",///对应DataWorks工作空间所处的region ID。
      "cn-shanghai",///对应DataWorks工作空间所处的region ID。
      "dataworks-public",//固定值
      "dataworks.cn-shanghai.aliyuncs.com");//访问DataWorks地址。
    DefaultProfile profile = DefaultProfile.getProfile(
     "yourRegionId","yourAccessKeyId","yourAccessKeySecret"); // 填写实际的regionId、AccessKeyID和AccessKey Secret。
    IAcsClient client = new DefaultAcsClient(profile);
    Long dagId = 700018951631L;     //dagid查询的实例ID。
    SearchManualDagNodeInstanceRequest searchNodeInstanceListRequest //查询内部状态的请求。
      = new SearchManualDagNodeInstanceRequest();
    searchNodeInstanceListRequest.setDagId(dagId); //运行日志中的skynet_jobid,可以在 CreateManualDagResponse.getReturnValue() 得到。
    searchNodeInstanceListRequest.setProjectName("hello_sh_sh"); //工作空间名称。
    searchNodeInstanceListRequest.setProtocol(ProtocolType.HTTP);
    SearchManualDagNodeInstanceResponse searchResponse = client
      .getAcsResponse(searchNodeInstanceListRequest);     //查询实例。
    java.util.List<NodeInsInfo> nodeInsfos =searchResponse.getData();
    System.out.println(searchResponse.getErrMsg()); //错误码。0代码正常;非0数值代表报错。
    for (SearchManualDagNodeInstanceResponse.NodeInsInfo nodeInsInfo : nodeInsfos) {
      System.out.println(nodeInsInfo.getNodeName()); //输出节点名称。
      System.out.println(nodeInsInfo.getStatus());  //输出状态信息。
    }
  }
}
NodeInsInfo中的参数如下图所示。Node
参数 类型 描述
instanceId LONG 实例ID
dagId LONG dag的ID
dagType INTEGER dag的Type
status INTEGER 状态
bizdate STRING 系统时间
paraValue STRING 运行参数
finishTime STRING 完成时间
beginWaitTimeTime STRING 等待时间
beginWaitResTime STRING 等待资源时间
beginRunningTime STRING 等待运行时间
createTime STRING 创建时间
modifyTime STRING 修改时间
nodeName STRING 节点名称

示例

运行前文中的代码,查询节点任务运行的状态。在Eclipse中运行时,会显示您的节点名称和运行状态。运行状态
通常有7种状态,状态码说明如下:
  • NOT_RUN(1,"未运行")
  • WAIT_TIME(2,“等待时间”)
  • WAIT_RESOURCE(3,“等待资源”)
  • RUNNING(4,“运行中”)
  • FAILURE(5,“运行失败”)
  • SUCCESS(6,“运行成功”)
  • CHECKING(7,“校检中”)

结果验证

您可以进入运维中心 > 手动任务运维 > 手动任务页面,单击相应任务后的查看实例验证结果。详情请参见运维中心