-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcheck_rds.py
More file actions
43 lines (35 loc) · 1.23 KB
/
Copy pathcheck_rds.py
File metadata and controls
43 lines (35 loc) · 1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/usr/bin/env python
# -*-coding:utf-8-*-
# @Author : gzq
# @date : 2017/12/7 0007 14:15
# @file : check_rds.py
# coding=UTF-8
# Auther:xwjr.com
from aliyunsdkcore import client
from aliyunsdkrds.request.v20140815 import DescribeDBInstancesRequest
import json
ID = 'Li'
Secret = '1'
RegionId = 'cn-shenzhen'
clt = client.AcsClient(ID, Secret, RegionId)
DBInstanceIdList = []
DBInstanceIdDict = {}
ZabbixDataDict = {}
#
def GetRdsList():
RdsRequest = DescribeDBInstancesRequest.DescribeDBInstancesRequest()
RdsRequest.set_accept_format('json')
# RdsInfo = clt.do_action(RdsRequest)
RdsInfo = clt.do_action_with_exception(RdsRequest)
for RdsInfoJson in (json.loads(RdsInfo))['Items']['DBInstance']:
DBInstanceIdDict = {}
try:
DBInstanceIdDict["{#DBINSTANCEID}"] = RdsInfoJson['DBInstanceId']
DBInstanceIdDict["{#DBINSTANCEDESCRIPTION}"] = RdsInfoJson['DBInstanceDescription']
DBInstanceIdList.append(DBInstanceIdDict)
except Exception, e:
print Exception, ":", e
print "Please check the RDS alias !Alias must not be the same as DBInstanceId!!!"
GetRdsList()
ZabbixDataDict['data'] = DBInstanceIdList
print json.dumps(ZabbixDataDict)