Python 捕获结构上的异常
我正在尝试使用fabric API(不是fab文件)创建脚本,但无法使异常正常工作。我的想法是,一旦主机出现故障,可能就运行一个Python 捕获结构上的异常,python,fabric,Python,Fabric,我正在尝试使用fabric API(不是fab文件)创建脚本,但无法使异常正常工作。我的想法是,一旦主机出现故障,可能就运行一个rollback()函数,并编写一个关于故障主机的日志文件。问题是系统总是存在的。这是我的代码: class FabricException(Exception): pass class Main(object): def __init__(self): env.password = 'password' env.user = 'what
rollback()
函数,并编写一个关于故障主机的日志文件。问题是系统总是存在的。这是我的代码:
class FabricException(Exception):
pass
class Main(object):
def __init__(self):
env.password = 'password'
env.user = 'whatever'
command = 'sudo ls -la'
failed = []
env.warn_only = True
env.abort_exeption = FabricException
def runCommand(command):
try:
result = run(command)
except FabricExeption:
print env.host + "failed"
failed.append = env.host
execute(runCommand, command=command, hosts=hosts)
disconnect_all()
if __name__ =="__main__":
main = Main()
如果您所做的只是记录此故障,为什么不使用上下文管理器,并让代码块仅发出警告。使用以下任一/两种设置:
env.warn\u only
和env.skip\u bad\u hosts
参考文献:
FabriceException
——我刚刚编辑过。由于某些原因,当尝试添加主类时,会得到一些有趣的格式。谢谢你