Aggregate Active Alerts¶
对当前告警进行统计。
请求格式¶
POST https://{apigw-address}/event-service/v2.1/active-alerts?action=aggregate
请求参数(URI)¶
名称 |
位置(Path/Query) |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
orgId |
Query |
必需 |
String |
资产所属的组织 ID。 如何获取 orgId 信息>> |
请求参数(Body)¶
名称 |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|
expression |
可选 |
String |
查询表达式,支持类 SQL 的查询。目前支持的逻辑运算是 and 和 or,查询的字段和对应的运算符清单如下。
|
groupByField |
必需 |
String |
分组字段: |
startOccurTime |
可选 |
String |
查询起始时间,与 |
endOccurTime |
可选 |
String |
查询结束时间,与 |
响应参数¶
名称 |
数据类型 |
描述 |
---|---|---|
data |
Map(Key 为 String,Value 为 Integer) |
Key 为分组字段的取值,value 为对应对象在指定时间段内发生告警的数量。 |
示例¶
请求示例¶
url: https://{apigw-address}/event-service/v2.1/active-alerts?action=aggregate&orgId=yourOrgId
method: POST
requestBody:
{
"groupByField": "assetId",
"action": "aggregate"
}
返回示例¶
{
"code": 0,
"msg": "OK",
"requestId": "12995105-514a-4706-9749-5930fd7145f9",
"data": {
"uEZPYKL0": 5,
"J123maMn": 2,
"Gx5mj2OE": 1,
"qu5TmJRj": 1,
"TMET5UCK": 1,
"IkaNsY3h": 1,
"L03wWUoU": 1,
"OAESlCPt": 1
}
}
Java SDK 调用示例¶
public void testAggregateActiveAlert() {
String accessKey = "yourAppAccessKey";
String secretKey = "yourAppSecretKey";
AggregateActiveAlertRequest request = new AggregateActiveAlertRequest();
request.setOrgId("yourOrgId");
request.setGroupByField("assetId");
try {
AggregateActiveAlertResponse response = Poseidon.config(PConfig.init().appKey(accessKey).appSecret(secretKey).debug())
.url("https://{apigw-address}")
.getResponse(request, AggregateActiveAlertResponse.class);
Gson gson = new Gson();
System.out.println(gson.toJson(response));
} catch(Exception e) {
System.out.print(e);
}
}