用于查询已触发的手动业务流程示例状态和名称等信息,包括运行中和运行完成的实例。本SDK仅适用于DataWorks V2.0。
参数信息
参数名 | 类型 | 说明 |
---|---|---|
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、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中的参数如下图所示。
参数 | 类型 | 说明 |
---|---|---|
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里运行时,会显示您的节点名称和运行状态。
状态码说明:
- NOT_RUN(1,”未运行”)
- WAIT_TIME(2,“等待时间”)
- WAIT_RESOURCE(3,“等待资源”)
- RUNNING(4,“运行中”)
- FAILURE(5,“运行失败”)
- SUCCESS(6,“运行成功”)
- CHECKING(7,“校检中”)
结果验证
您可以进入查看实例进行查看。详情请参见运维中心模块的文档。
您可以看到运行的实例状态,本示例中的实例已成功运行。
原创文章,作者:网友投稿,如若转载,请注明出处:https://www.cloudads.cn/archives/34163.html