阿里云自动巡检( 二 )


代码如下:
阿里云自动巡检文章插图
这里首先我们设定了需要的nameSpace和metricName 。 然后创建了根据用户名创建了不同的ecsCPU的数据库 。 这里DB的名称前面加用户名是为了后续生成巡检结果的时候便于区分 。
之后我们便在每个用户的数据库中创建了以实例ID为名称的表 , 用来存放这个实例的监控数据 。 这里对名称做了一下处理 。 首先阿里云ECS的实例ID都是以i-****开头的 , 但是sqlite3数据库的标明不能出现-所以将i-这部分去除掉了 。 去掉后的一串字符串有可能以数字开头 , 以数字开头的表名在sqlite3中也是不允许的 , 所以之前又加了ecs_作为开头以避免表名报错 。
生成巡检结果
当我们获取数据后就要生成巡检结果了 , 这里我们只需要读取之前存好的数据并且与我们的阈值进行判断即可 。
阿里云自动巡检文章插图
到这里我们的巡检脚本就基本完成了 。
使用说明v 0.1 版本说明
阈值修改
支持根据需求配置不同的CPU、内存和磁盘阈值
配置方法:
修改ops.py文件的ecsCpuThreshold、ecsMemThreshold、ecsDiskThreshold三项的值即可 , 单位为百分比
配置文件说明
复制config.ini.ex为 config.ini 修改内容即可
[test]
配置文件名称
name = aaa
个性化名称
enable = 1
是否启用 , 1为启用 , 0为不启用 。 不启用的配置在生成报告中会被忽略
ak = Lxxxxx9C
阿里云AccessKey ID
sk = LxxxxxUq
阿里云AccessKey Secret
region= cn-hangzhou
地域信息 , 目前单配置仅支持单个地域 , 如有多个地域请添加多个文件
已知bug
目前未对ECS信息的分页进行处理 , 如果实例数量较多可能会导致数据获取不全的问题 , 后续版本修复 (目前测试环境下上百台机器暂未发现报错) 。
未进行较为详细的报错信息输出 , 如果报错可能会直接退出 。
【阿里云自动巡检】了解更多技术案例 , 可查看云掣官网 。