Python结构,失败时发送通知

问题描述 投票:2回答:2

我一直在尝试找出当我的结构脚本失败时最好的方法是什么(例如,通过python模块slackbot发送松弛通知消息。]

我已经举了一个例子,尝试在这里进行上述操作:

fab_failtest.pymy_slackclient.py

您可以通过将两个文件都下载到一个目录中,运行pip安装fabricslackbot,然后运行:,来运行以上示例:

fab --fabfile=fab_failtest.py fail_test1

fab --fabfile=fab_failtest.py fail_test2

((您还必须拥有一台可以通过ssh连接到的计算机,在本示例中,我具有mrbluesky@elo,并且在22上具有打开的ssh端口)]

  • [fail_test1使用try-except,所以我可以获得异常错误信息,依此类推
  • [fail_test2使用try-finally加上一个简单的布尔变量,因此没有异常信息可用]
  • 起初,我以为我在fail_test1示例中遇到了这个问题,但我看到它多次失败发送失败消息,我想知道是否可能存在争用情况或涉及某些情况?我可以改用fail_test2,但我真的很想像fail_test1中那样访问堆栈跟踪。

是否有更好的方法来执行此操作,例如python织物中提供的某些功能可以完全完成上述示例中我要完成的工作?

我一直在尝试找出当我的结构脚本失败时最好的方法是什么(例如,通过python模块slackbot发送一个松弛通知消息)。我举了一个例子,其中...

python exception-handling fabric slack
2个回答
2
投票

我不同意您的两种方法。我坚信更少的代码会更好。那是什么意思?函数应按其名称所述执行操作,如果您必须添加一个像我将其作为包装程序那样添加的全局处理程序,则结构函数将很难读取,无需在该函数中添加错误处理混合。上面说:


0
投票

我有一个类似的问题,我想在脚本失败时发送通知。因此,我决定构建一个程序包Notif,以便在脚本使用装饰器失败时发送通知。

© www.soinside.com 2019 - 2024. All rights reserved.