Get Pipeline Details¶
获取指定流数据处理任务的详细信息。
前提条件¶
已通过流数据处理服务创建流数据处理任务,并获取到流数据处理任务的ID。
请求格式¶
GET https://{apigw-address}/streaming/v2.0/streaming/pipeline/{pipelineId}
请求参数(URI)¶
名称 |
位置(Path/Query) |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
pipelineId |
Path |
必需 |
String |
流数据处理任务ID,可通过 EnOS管理门口 > 流数据处理 > 流运维 页面查看,或通过调用 List Pipelines 接口获取。 |
orgId |
Query |
必需 |
String |
用户所属的组织ID。如何获取orgId信息>> |
ifReleased |
Query |
可选 |
Boolean |
指定流数据处理任务是否已发布。true:已发布的任务;false:未发布的任务(仍处于设计状态的任务);默认为false。 |
响应参数¶
名称 |
数据类型 |
描述 |
---|---|---|
data |
List<JSONObject> |
返回流数据处理任务的详细信息。详见 data |
data¶
名称 |
数据类型 |
描述 |
---|---|---|
desc |
String |
流数据处理描述信息。 |
pipelineId |
String |
流数据处理任务ID。 |
pipelineName |
String |
流数据处理任务名称。 |
version |
String |
流数据处理任务使用的模板版本。 |
templateType |
Integer |
流数据处理任务使用的模板类型。1:原生模板;0:时间窗口聚合模板;2:多路归并模板;3:电量计算模板(按表读数);4:电量计算模板(按平均功率);5:电量计算模板(按瞬时功率)。 |
templateName |
String |
流数据处理任务使用的模板名称。 |
messageChannel |
Integer |
流数据处理任务的消息通道模式。0:实时通道;1:离线通道。 |
pipelineJson |
JSONObject |
流数据处理任务配置JSON。 |
错误码¶
代码 |
错误信息 |
描述 |
---|---|---|
61108 |
Stream processing job does not exit. |
流数据处理任务不存在。 |
99000 |
Internal Server Error. |
服务内部错。 |
示例¶
请求示例¶
url: https://{apigw-address}/streaming/v2.0/streaming/pipeline/{pipelineId}?orgId=yourOrgId
method: GET
返回示例¶
{
"code": 0,
"msg": "OK",
"data": {
"pipelineId": "eec1c103-xxxx-44f6-9045-696dd1c873bb",
"pipelineName": "Demo",
"messageChannel": "0",
"templateType": 2,
"templateName": {
"en_us": "xxx",
"zh_cn": "电量计算模板(按平均功率)"
},
"version": "0.1.0",
"desc": "",
"pipelineJson": {
"points": [
{
"inputPointId": "YL_Turbine_Model::YL.Meter.Input39",
"outputPointId": "YL_Turbine_Model::YL.Merter.PI.Out11",
"detailOutputPointId": null,
"minValue": "0",
"maxValue": "10000",
"maxValueInclude": true,
"minValueInclude": true,
"exceptionPolicy": "2"
}
],
"piDetail": false
}
}
Java SDK调用示例¶
import com.alibaba.fastjson.JSONObject;
import com.envision.apim.poseidon.config.PConfig;
import com.envision.apim.poseidon.core.Poseidon;
import com.envision.apim.poseidon.request.PoseidonRequest;
import org.junit.Before;
import org.junit.Test;
public class Sample {
private static final String API_Gateway_URL = "https://{domain_url}";
private Poseidon poseidon;
private static class Request extends PoseidonRequest {
public void setBodyParams(String key, Object value) {
bodyParams().put(key, value);
}
public void setMethod(String method) {
this.method = method;
}
private String method;
@Override
public String baseUri() {
return "";
}
@Override
public String method() {
return method;
}
}
@Before
public void init() {
poseidon = Poseidon.config(
PConfig.init()
.appKey("AccessKey of your APP")
.appSecret("SecretKey of your APP")
).method("GET");
}
@Test
public void GetPipelineDetails() {
Request request = new Request();
JSONObject response = poseidon
.url(API_Gateway_URL + "/streaming/v2.0/streaming/pipeline/{pipelineId}")
.queryParam("orgId", "yourOrgId")
.getResponse(request, JSONObject.class);
System.out.println(response);
}
}