我正在尝试编写一个脚本,使用AdminControl.testConnection测试所有集群的所有数据源。它工作得很好,直到我想显示它抛出的实际错误消息,其中有一个问题。当我想传递自定义消息时,循环工作,但当我想抛出实际消息时,循环不工作。有人曾经面对过这个问题或找到了解决方案吗
此代码工作正常,存在自定义错误:
listofClusters = AdminClusterManagement.listClusters()
for eachCluster in listOfClusters:
eachCluster = eds.split('(')[0]
print ""
print 'Test %s DataSources' % (eachCluster)
print ""
cluster = AdminConfig.getid('/ServerCluster:' + eachCluster + '/')
ds = AdminConfig.list("DataSource", cluster)
for eds in ds.split('\n'):
dsname = eds.split('(')[0]
dsname = dsname[1:]
try:
print '%s on Cluster1: %s' % (dsname, AdminControl.testConnection(eds))
except:
print("Connection test failed on %s for: %s" % (eachCluster, dsname))
但是当我试图捕获错误并显示它时,代码只是在第一个错误发生后退出,而不是抛出错误然后继续检查循环中的下一个数据源
listofClusters = AdminClusterManagement.listClusters()
for eachCluster in listOfClusters:
eachCluster = eds.split('(')[0]
print ""
print 'Test %s DataSources' % (eachCluster)
print ""
cluster = AdminConfig.getid('/ServerCluster:' + eachCluster + '/')
ds = AdminConfig.list("DataSource", cluster)
for eds in ds.split('\n'):
dsname = eds.split('(')[0]
dsname = dsname[1:]
try:
print '%s on Cluster1: %s' % (dsname, AdminControl.testConnection(eds))
except:
print("Connection test failed on %s for: %s" % (eachCluster, dsname))
type,val,tb = sys.exc_info()[1]
print(typ)
print(val)
print(tb)
目前没有回答
相关问题 更多 >
编程相关推荐