【问题标题】:How to use the Python Sentry SDK (raven-python) with a HTTP proxy如何使用带有 HTTP 代理的 Python Sentry SDK (raven-python)
【发布时间】:2018-08-09 17:28:11
【问题描述】:

我有一个 webapp,它使用 raven-python SDK for Sentry 进行错误报告。我希望该 SDK 的出站请求通过 HTTP 代理。

最好的方法是什么?

【问题讨论】:

  • 嗨,我在哨兵工作。 Gunicorn 与出站请求或除传入请求之外的任何 I/O 无关。我不明白你的 .ini 文件中的管道是什么意思。您是否正在尝试通过 HTTP 代理汇集大量流量?
  • @MarkusUnterwaditzer 没错,Raven 的所有出站流量都必须通过 HTTP 代理。我在这里包含了有关 Gunicorn 的详细信息,因为它必须摄取一个带有一些 Pyramid 应用程序配置的 .ini 文件,并希望该文件中的另一个配置条目允许使用出站代理。

标签: python http-proxy sentry


【解决方案1】:

您可以使用替代Transport such as the requests one。通过请求传输,您可以使用环境变量来设置代理:http://docs.python-requests.org/en/master/user/advanced/#proxies

例子:

from raven.transport.threaded_requests import ThreadedRequestsHTTPTransport

Client('...', transport=ThreadedRequestsHTTPTransport)

在您的环境中,设置HTTPS_PROXY=https://localhost:9090 或类似的东西。

【讨论】:

  • 附带说明,我们有一个新的 Python SDK 目前处于 alpha 阶段,它支持这些开箱即用的环境变量:forum.sentry.io/t/new-python-sdk-feedback-wanted/4366
  • 谢谢,马库斯!我昨天在哨兵论坛上得到建议后正在探索这个问题。今天晚些时候我会试一试。
猜你喜欢
  • 1970-01-01
  • 2016-06-13
  • 2019-10-01
  • 2014-02-28
  • 2017-03-13
  • 2012-05-30
  • 2018-08-12
  • 2019-05-06
  • 2014-02-02
相关资源
最近更新 更多