2017-09-25 42 views
0

我们使用SoftLayer API来设置和拆除开发虚拟机,并且这些虚拟机的ping监控器的自动设置会向我们发送不需要的消息以显示其状态。有没有办法通过SoftLayer API,特别是通过python删除给定虚拟机的监视器?我浏览过文档,但没有看到添加/删除显示器的方法。Softlayer API - 删除显示器

回答

0

看到这个代码

""" 
Delete network monitoring 

The script makes a single call to SoftLayer_Network_Monitor_Version1_Query_Host::deleteObject 
method to delete the network monitoring for more information see below 

Important manual pages: 
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Monitor_Version1_Query_Host 
http://sldn.softlayer.com/reference/services/SoftLayer_Network_Monitor_Version1_Query_Host/deleteObject 

License: http://sldn.softlayer.com/article/License 
Author: SoftLayer Technologies, Inc. <[email protected]> 
""" 
import SoftLayer.API 
from pprint import pprint as pp 

# Your SoftLayer API username and key. 
USERNAME = 'set me' 
API_KEY = 'set me' 

""" 
The id of the network monitor you wish to delete 
to get the network monitorings on your machine use this code: 
virtualGuestService = client['SoftLayer_Virtual_Guest'] 
virtualGuestId = 7698842 
networkMonitors = virtualGuestService.getNetworkMonitors(id = virtualGuestId) 
print (networkMonitors) 
""" 
idNetworkMonitoringToDelete = 1738019 

# Declare the API client 
client = SoftLayer.Client(username=USERNAME, api_key=API_KEY) 
networkMonitorVersionService = client['SoftLayer_Network_Monitor_Version1_Query_Host'] 

# Send the request to delete the object 
try: 
    result = networkMonitorVersionService.deleteObject(id=idNetworkMonitoringToDelete) 
    pp(result) 
except SoftLayer.SoftLayerAPIError as e: 
    print("Unable to delete the network monitoring " 
      % (e.faultCode, e.faultString)) 
    exit(1) 
+0

完美。谢谢! –