云监控为用户提供了丰富的云产品监控数据,很多监控项在控制台开放前,可以优先通过OpenAPI查询数据并设置报警,下面分享一下如何通过白屏化的OpenAPI工具设置MongoDB单节点实例和云企业网实例的报警规则。
传送>>>>>> OpenAPI Explore 白屏化工具
最佳实践一:设置MongoDB的单节点实例报警规则
1.首先进入控制台MongoDB单节点列表页面,查询实例ID
2.在OpenAPI Explore报警页面,输入相关入参,并点击“发送请求”,即可创建报警规则。
Namespace固定为acs_mongodb,其余参数根据实际情况填写即可。
联系人组信息,可以登录控制台后在报警服务中查询。
代码示例如下
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.cms.model.v20180308.*;
class Test {
public static void main(String[] args) {
// 初始化
DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "<accessKeyId>","<accessSecret>");
IAcsClient client = new DefaultAcsClient(profile);
//设置参数
CreateAlarmRequest createAlarm = new CreateAlarmRequest();
createAlarm.setNamespace("acs_mongodb");
createAlarm.setName("mongodb单节点报警测试");
createAlarm.setMetricName("MemoryUtilization");
createAlarm.setDimensions("[{"instanceId":"dds-bp1067053aea2604"}]");
createAlarm.setStatistics("Average");
createAlarm.setComparisonOperator(">");
createAlarm.setThreshold("0");
createAlarm.setContactGroups("["jiangmitest"]");
createAlarm.setNotifyType(1);
// 发起请求
try {
CreateAlarmResponse response = client.getAcsResponse(createAlarm);
}catch (Exception e) {
e.printStackTrace();
}
}
}
附1:MongoDB单节点监控项说明
MongoDB单节点监控项说明
MetricName | 含义 | 单位 | Dimensions | Statistics |
---|---|---|---|---|
SingleNodeCPUUtilization | 实例的CPU使用率 | % | instanceId | Average 、Minimum 、Maximum |
SingleNodeMemoryUtilization | 实例的内存使用率 | % | instanceId | Average 、Minimum 、Maximum |
SingleNodeDiskUtilization | 实例的磁盘使用率 | % | instanceId | Average 、Minimum 、Maximum |
SingleNodeIOPSUtilization | 实例的IOPS使用率 | % | instanceId | Average 、Minimum 、Maximum |
SingleNodeConnectionUtilization | 已经使用的连接数百分率 | % | instanceId | Average Minimum 、Maximum |
SingleNodeQPS | Mongodb实例的平均每秒SQL查询数 | 个 | instanceId | Average 、Minimum 、Maximum |
SingleNodeConnectionAmount | 当前应用程序连接到Mongodb实例的数量 | 个 | instanceId | Average 、Minimum 、Maximum |
SingleNodeInstanceDiskAmount | 实例实际使用的磁盘空间总量 | Bytes | instanceId | Average 、Minimum 、Maximum |
SingleNodeDataDiskAmount | 数据占用的磁盘空间容量 | Bytes | instanceId | Average 、Minimum 、Maximum |
SingleNodeLogDiskAmount | 日志占用磁盘空间量 | Bytes | instanceId | Average 、Minimum 、Maximum |
SingleNodeIntranetIn | 实例的网络流入流量 | Bytes | instanceId、role | Average 、Minimum 、Maximum |
SingleNodeIntranetOut | 实例的网络流出流量 | Bytes | instanceId | Average 、Minimum 、Maximum |
SingleNodeNumberRequests | 发送到服务端的请求总量 | 个 | instanceId | Average 、Minimum 、Maximum |
SingleNodeOpInsert | 从mongodb实例最近一次启动到现在累计接收到的insert命令的次数 | 次 | instanceId | Average 、Minimum 、Maximum |
SingleNodeOpQuery | 从mongodb实例最近一次启动到现在累计接收到的query命令的次数 | 次 | instanceId | Average 、Minimum 、Maximum |
SingleNodeOpUpdate | 从mongodb实例最近一次启动到现在累计接收到的update命令的次数 | 次 | instanceId | Average 、Minimum 、Maximum |
SingleNodeOpDelete | 从mongodb实例最近一次启动到现在累计执行delete的操作次数 | 次 | instanceId | Average 、Minimum 、Maximum |
SingleNodeOpGetmore | 从mongodb实例最近一次启动到现在累计执行getmore的操作次数 | 次 | instanceId | Average 、Minimum 、Maximum |
SingleNodeOpCommand | 从mongodb实例最近一次启动到现在向数据库发出的command的累计次数 | 次 | instanceId | Average 、Minimum 、Maximum |
最佳实践二:设置云企业网的报警规则
云企业网提供三个层面监控数据,区域层面、地域层面、边缘路由器健康检查。具体指标见文章结尾。
1.首先进入控制台云企业网实例列表页面 ,查询云企业网实例ID
- 查询边缘路由器信息
2.在OpenAPI Explore报警页面,输入相关入参,并点击“发送请求”,即可创建报警规则。
Namespace固定为acs_cen,其余参数根据实际情况填写即可。点击发送后,创建成功即可在云监控控制台查看。
代码示例如下
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.cms.model.v20180308.*;
class Test {
public static void main(String[] args) {
// 初始化
DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "<accessKeyId>","<accessSecret>");
IAcsClient client = new DefaultAcsClient(profile);
//设置参数
CreateAlarmRequest createAlarm = new CreateAlarmRequest();
createAlarm.setNamespace("acs_cen");
createAlarm.setName("云企业网路由器丢包报警");
createAlarm.setDimensions("[{"cenId":"cen-wqixsotyw9itjgxsjm","vbrInstanceId":"vrt-rj9sqlbbmui8993f931tv"}]");
createAlarm.setMetricName("VBRInternetInRate");
createAlarm.setStatistics("Value");
createAlarm.setComparisonOperator(">");
createAlarm.setThreshold("0");
createAlarm.setContactGroups("["jiangmitest"]");
createAlarm.setNotifyType(1);
// 发起请求
try {
CreateAlarmResponse response = client.getAcsResponse(createAlarm);
}catch (Exception e) {
e.printStackTrace();
}
}
}
附 云企业网监控指标说明
Metric | 监控项含义 | 单位 | Dimensions | Statistics |
---|---|---|---|---|
InternetOutRatePercentByConnectionArea | 区域流出带宽百分比 | % | cenId、geographicSpanId | Value |
InternetOutRatePercentByConnectionRegion | 地域流出带宽百分比 | % | cenId、geographicSpanId、localRegionId、oppositeRegionId | Value |
InternetOutRateByConnectionArea | 区域流出带宽 | bits/s | cenId、geographicSpanId | Value |
InternetOutRateByConnectionRegion | 地域流出带宽 | bits/s | cenId、geographicSpanId、localRegionId、oppositeRegionId | Value |
LatencyByConnectionRegion | 地域延时 | ms | src_region_id、dst_region_id | Value |
VBRHealthyCheckLatency | 边缘路由器延时 | ms | cenId、vbrInstanceId | Value |
VBRHealthyCheckLossRate | 边缘路由器丢包率 | % | cenId、vbrInstanceId | Value |
VBRInternetOutRate | 边缘路由器流出带宽 | bits/s | cenId、vbrInstanceId | Value |
VBRInternetInRate | 边缘路由器流入带宽 | bits/s | cenId、vbrInstanceId | Value |
geographicSpanId列表
可以通过查询CEN的DescribeCenBandwidthPackages接口,通过GeographicRegionBId和GeographicRegionAId获取互通区域的Id。示例如下:
RegionId列表
localRegionId、oppositeRegionId、src_region_id、dst_region_id与阿里云RegionId一样,可以通过 DescribeRegions接口来查询RegionId。