用于向datadog提交计时和异常的flask模块
Flask-Breathalyzer的Python项目详细描述
将异常推送到数据狗的烧瓶模块
功能
- 将异常推送到datadog;
- headers或data的黑名单,作为xpath style字符串的列表(您可能有一些不想为隐私而发布的头,或者可能有一些不需要显示的正文字段,例如:base64 blob)。
安装
使用pip:
$ pip install flask_breathalyzer[datadog]
问题
打开issue时,请添加几行代码作为失败测试,或者-更好-打开其相对的pull请求将此测试添加到测试套件中。
快速示例
让我们用我们所需要的一切创建一个新的virtualenv:
$ virtualenv example $ source example/bin/activate $ pip install pytest flask_breathalyzer[datadog]
作为第二步,我们创建一个testexample.py文件,如下所示:
fromflaskimportFlaskimportdatadogfromflask_breathalyzerimportBreathalyzerdeftest_example():app=Flask(__name__)@app.route("/")defboom():1/0# from http://docs.datadoghq.com/api/options={'api_key':'your-datadog-api-key','app_key':'your-datadog-app-key'}ba=Breathalyzer(app,**options)response=test_client.get('/')assertresponse.status=='500 INTERNAL SERVER ERROR'assertb'<title>500 Internal Server Error</title>'inresponse.dataassertresponse.mimetype=='text/html'assertisinstance(ba.last_event_id,int)# your exception is now on Datadog with this ID
让我们启动示例测试:
$ py.test example.py