4

起动机

Airbrake/Errbit 是收集其他应用程序生成的错误并汇总结果以供审查的应用程序。Airbrake 是一个商业应用程序,Errbit 是 Airbrake 的开源克隆。

主菜

我需要一些帮助来弄清楚 Errbit API。我不是在谈论您用来向 Errbit 发送错误的 API,但是 Errbit(和 Airbrake)还有另一个 API,您可以用来从中读取数据。Airbrake API 的文档相当完善,但没有 Errbit API 的文档。我向 Errbit Google Group 发布了一个关于他们的 API 的问题,并被告知:

  • 没有文档
  • Errbit API 与 Airbrake API 不同
  • Errbit API 代码在这里

我查看了代码,但作为一个非 Rubyist,我无法理解它。

我想做的就是获取特定应用程序(项目)的错误总数。如果只能获取所有错误,那么我可以过滤掉 API 客户端中感兴趣的项目的错误。

熟悉 Rails 应用程序的人能否查看 API 是否支持这一点,如果支持,请解释我如何调用它(我应该使用什么 URL 和参数)?

4

2 回答 2

5

从我可以看到你只需要做一个 GET 请求

/api/v1/stats/app?api_key=XXXXXX

其中 XXXXX 是您要为其获取参数的应用程序的 api 密钥。此调用将返回一个包含以下信息的 json:

stats = {
  :name => @app.name,
  :last_error_time => @last_error_time,
  :unresolved_errors => @app.unresolved_count
}

如果您需要更多信息,您可以随时修改文件:/app/controllers/api/v1/stats_controller.rb 以包含相关信息

于 2013-05-10T14:43:37.400 回答
1

快速查看后,api/v1/problems您可以访问包含相关信息(如 app_id、app_name、已解决状态等)的问题的综合列表。您可以按开始和结束日期过滤结果。中的“通知”也是如此api/v1/notices。所以在那个地址你需要的信息应该是可用的。

api/v1/stats您将获得一个带有 app_name 的对象,以及最后一次未解决的错误和那些。需要在statsapi_key 中对应用进行身份验证;/problems但是,在or中没有找到 api_key 要求/notices,这很奇怪。

反正好像 Errbit 是要安装在自己的服务器上的东西,所以你可以修改代码找到你需要的信息,对吧?该app对象似乎有一个problems适合您需要的方法。

希望有帮助。

于 2013-05-10T14:41:25.240 回答