Automatic crash reporting

Propose new features or changes.

Moderators: SMC Team, MVP

Automatic crash reporting

Postby Oleg » 05 Sep 2011 01:45

To make SMC more stable it is very helpful to automatically generate and send crash reports.
Generating crash report manually and manually submitting it into bug tracker is very complicated procedure for most of the users. And even these how can make it prefer to not waste their time.
Automatic submission (by one click or no clicks at all) raises crash reports flow in thousands times.
That big flow can drive developer's efforts to a right direction when these bugs fixed first that affects most users and not one that has a time to submit it in a bug tracker. There is a statistics that 1 percent of top crash bugs fixes 50% of all crashes: «In recent months, Microsoft has learned that 80 percent of the errors and crashes in Windows and Office are caused by 20 percent of the entire pool of bugs detected, and that more than 50 percent of the headaches derive from a mere 1 percent of all flawed code.»
http://www.crn.com/news/security/188217 ... atures.htm

I represent http://www.crash-server.com a crash reporting and analyzing service.
I would like to suggest adding to SMC of crash report sending feature for free.

In very short it looks like this: SMC crashes, the user is offered to send the crash report to the manufacturer. The report is uploaded, system analyzes it and then group it with similar problems. Further developers can download the interesting memory dump, open it in a debugger and try to find and fix a bug.
Key feature is that all of that does automatically in “one click”. Experience shows that almost no users send a crash report if this require any difficult actions (sending an e-mail or registering in bug tracker is difficult enough). One click is so easy way that some users do it (many users do not do even this).
Other key feature is that all preprocessing of crash reports is done for you. You have no need to open each report and see that you already has fixed it.

The small description and demonstration are accessible here:
http://www.crash-server.com/Demo/Demo.aspx

Also you can open a demo project and browse a little:
http://www.crash-server.com/Application ... tID=sample (Login as Guest)

I will be happy to answer any your questions, comments and opinions at info@crash-server.com
Oleg
Furball brown
Furball brown
 
Posts: 3
Joined: 05 Sep 2011 01:43

Re: Automatic crash reporting

Postby Luiji » 08 Sep 2011 17:53

Very intriguing, and we should probably implement this feature, but sadly not with your utility. As it is proprietary and only available for non-commercial use, it is incompatible with our licensing. Thank you for taking the time to give us all this information, though.
Custom Built IBM-Compatible (Arch Linux w/ KDE)
Dell Vostro (Windows 7)
Dell Inspiron 1440 (Windows Server 2003, Debian w/ KDE)
Dell Inspiron 11z (Linux Mint)
Luiji
MVP
MVP
 
Posts: 2703
Joined: 14 Jan 2010 23:20
Location: The Mushroom Kyngdom

Re: Automatic crash reporting

Postby penguin » 09 Sep 2011 03:58

I am thinking that we could build a dialog box that appears the next time you start SMC to submit an error report.

So, if the game crashes, it closes. You reopen it, and appears (as a CEGUI Dialog box) "Would you like to submit a crash report to the SMC Team so we can fix it?" and there will be yes and no.
my wiki page
I may disappear for a long time, but trust me, I'm still alive.
User avatar
penguin
Turtle boss
Turtle boss
 
Posts: 665
Joined: 14 Nov 2009 14:37
Location: Nebraska

Re: Automatic crash reporting

Postby Oleg » 28 Sep 2011 01:15

Luiji wrote:Very intriguing, and we should probably implement this feature, but sadly not with your utility. As it is proprietary and only available for non-commercial use, it is incompatible with our licensing. Thank you for taking the time to give us all this information, though.
Client side of the system consists from tiny library crshhndl.dll that intercepts exceptions and then runs another program SendRpt.exe that do all the work. If SendRpt.exe is not available main program would function as there is no reporting system, so SendRpt.exe is not a part of the main program but it is a separate program. For example you can run a browser from SMC, but it doesn't mean that the browser should be under GPL. crshhndl.dll can be licensed under GPL.

I have about 5 years experience in crash dump analyzing, crash reporting and hundreds of millions (automatically) received crashes. New crash-server.com service takes best of that experience and I assure you that it is much better to quickly integrate already working solution than to make something from scratch.

For example here was an idea to ask something like "Would you like to submit a crash report to the SMC Team so we can fix it?"
That is not a good idea, since almost everybody choose No. How many times did you choose Send in that window?
winxp-crash.png
winxp-crash.png (70.42 KiB) Viewed 8044 times

By the way Microsoft has understood that and since Vista there is no choice:
windows-explorer-stopped-working.jpg
windows-explorer-stopped-working.jpg (22.93 KiB) Viewed 8044 times

This may be not a problem for application with millions of installations but most important reports comes on beta stage (because we want to fix the crashes before release) when count of installations is minimal and every crash is important.

Another question is where "to submit a crash report to the SMC Team"? E-mail? FTP? Web-server? To look to every crash report or to write some tool that drops similar reports away? What to do with crash reports from old (not interesting) versions? What about integration with bug tracking system?

So many of such non-trivial moments already solved in my solution.
Oleg
Furball brown
Furball brown
 
Posts: 3
Joined: 05 Sep 2011 01:43

Re: Automatic crash reporting

Postby penguin » 28 Sep 2011 01:33

I believe we should do what Firefox does with their bug reporting.....

Build a small program that does nothing but submit information to our fourm.... BUT... I was also thinking that we could set up a dedicated script using BugZilla...... and have the small program set up to submit to that.
my wiki page
I may disappear for a long time, but trust me, I'm still alive.
User avatar
penguin
Turtle boss
Turtle boss
 
Posts: 665
Joined: 14 Nov 2009 14:37
Location: Nebraska

Re: Automatic crash reporting

Postby BowserJr » 28 Sep 2011 08:19

You're talking a lot about DLLs and EXEs. Any support for non-Windows? I don't think anyone wants to lose the cross-platform-ness we currently have.

Android already does this for you for market downloads, and it's certainly much more useful and reliable than hoping people will report crashes themselves.It's probably easier in Java though, because it uses the Exception/ stack trace system that Java already has.
"Plants need to have water poured on them because they have no hands to hold glasses of water."
User avatar
BowserJr
SMC Team
SMC Team
 
Posts: 1543
Joined: 05 Feb 2007 14:07
Location: London, UK

Re: Automatic crash reporting

Postby Luiji » 28 Sep 2011 19:55

Well, it would not really harm cross-platform'ness if we just used some #ifdef's etc.
Custom Built IBM-Compatible (Arch Linux w/ KDE)
Dell Vostro (Windows 7)
Dell Inspiron 1440 (Windows Server 2003, Debian w/ KDE)
Dell Inspiron 11z (Linux Mint)
Luiji
MVP
MVP
 
Posts: 2703
Joined: 14 Jan 2010 23:20
Location: The Mushroom Kyngdom

Re: Automatic crash reporting

Postby Oleg » 28 Sep 2011 21:29

penguin wrote:I believe we should do what Firefox does with their bug reporting.....

Build a small program that does nothing but submit information to our fourm....
You are wrong about Firefox and "nothing but submit information to forum". Firefox has a system similar to what I present. You can see it here https://crash-stats.mozilla.com/products/Firefox
The difference between my and Firefox systems for you is that to integrate with my system you need add some library, add a few lines of code and follow some easy instruction when building the installer. You do not need to think about servers, configuration, traffic and so on. And that can be done with a few days and I can and want to help integrate it as smooth as possible and ready to do some work for you.
BowserJr wrote:You're talking a lot about DLLs and EXEs. Any support for non-Windows? I don't think anyone wants to lose the cross-platform-ness we currently have.

Luiji wrote:Well, it would not really harm cross-platform'ness if we just used some #ifdef's etc.

I agree with Luiji, that subsystem can work on Windows only, because it is not part of game itself, it is just an optional tool to help make a program more stable, for example you are using Nullsoft Installer for Windows but it doesn't make SMC Windows specific, installer is just a tool (optional by the way).

Also support of other platforms is possible but currently is not implemented.
And I am not sure that it is needed for your program, because most of the bugs can be catched on Windows, and as far as I know only Windows has a great possibility to deeply analyze memory dumps. Other platforms usually has no more than a stack trace that is often is not enough to debug a problem because except easy bugs when pointer is not checked for NULL you need to see a local and global variables, search in heap, switch between threads and do other hard core things.
Oleg
Furball brown
Furball brown
 
Posts: 3
Joined: 05 Sep 2011 01:43


Return to Feature Requests

Who is online

Users browsing this forum: No registered users and 3 guests

cron