托管Breakpad服务器(Electron Crash Reporter)

时间:2017-05-01 17:34:04

标签: electron google-breakpad

我想设置一个服务来收集breakpad崩溃报告(特别是使用Electron Crash Reporter的电子应用程序:https://github.com/electron/electron/blob/master/docs/api/crash-reporter.md

我能找到的唯一服务器只是转储minidump并将它们显示在一个列表中,这对于有数百万个会话生成数百个崩溃报告的应用程序没有帮助。 Fabric / Crashlytics为iOS / Android做的事情是理想的(集群匹配报告,按发布排序)。托管的东西也非常好。

  • 是否有更好的项目来收集破坏者崩溃报告?
  • 是否有任何好的托管选项
  • 是否有任何中间件会收集破坏平台报告并将其发送到Crashlytics,HockeyApp或Firebase等托管服务?

谢谢!

3 个答案:

答案 0 :(得分:7)

注意:我没有足够的声望来发布一个包含两个以上链接的帖子:/以下所有项目都应该很容易通过网络搜索找到。

是否有更好的项目来收集破坏者崩溃报告?

Mozilla的Socorro是一个开源项目,由Mozilla用于收集Firefox等应用程序的破解崩溃报告。您可以通过搜索Mozilla崩溃统计数据来查看他们的Socorro实例。

有没有好的托管选项?

我只知道有三家公司提供托管的breakpad崩溃管理选项:Backtrace I / O,Bugsplat和Raygun I / O. 完全披露:我为Backtrace I / O工作

Backtrace I / O 提供托管解决方案,用于管理从电子应用生成的破解版崩溃报告:https://documentation.backtrace.io/product_integration_minidump_electron/index.html。这包括崩溃聚合,符号管理,工作流集成(Slack,JIRA,PagerDuty等),自定义属性w /所有属性的完整报告(您可以通过crashReporter.setExtraParameter()添加自定义属性)[编辑:固定拼写]电子应用。

Bugsplat 提供崩溃聚合,符号服务器和工作流集成。 AFAICT,它只支持静态属性/字段集(搜索bugsplat breakpad以查找其文档)这意味着它们不支持Electron报告的所有内置属性(guidprocess_typeplatform等)也不支持通过crashReporter.setExtraParameter()添加的额外属性。另请注意,他们对breakpad崩溃报告的大小有严格的限制(< 2MB)。如果他们对Electron应用程序有任何官方支持,那就没问题了。

Raygun 仅在4月中旬通过博客正式宣布了破解版支持。我找不到任何文件表明这是他们积极支持的内容。 Ragyun的功能+对其他语言的支持与Crashlytics,HockeyApp等其他崩溃报告解决方案相当。

是否有任何中间件可以收集破坏平台报告并将其发送到Crashlytics,HockeyApp或Firebase等托管服务?

我不知道。

答案 1 :(得分:1)

还有一个新选项:https://blog.sentry.io/2018/03/13/introudcing-sentry-electron

Sentry将通过他们新的官方电子支持跟踪本地崩溃。这是一个不错的选择,因为它也会为同一个应用程序带来JS错误。

答案 2 :(得分:0)

另一种选择:

项目下方的项目可以一键部署到heroku。它解析了breakpad转储并将其传递给Sentry.io(一个带有免费计划的不错的托管服务)。它不是100%托管(您托管中间件),但只需要10分钟来设置。 Sentry拥有其中的99%,并且可以进行出色的问题分组,报告等。

https://github.com/khamidou/electron-breakpad-sentry