Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD Beta Forum
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Wed Jul 05, 2006 10:51 pm   

Initial reaction to CMUD bug reports
 
Well, I'm about a third of the way through the automated crash reports and feedback from CMUD. Note that I don't mean I've fixed anything...I've just *looked* at the crash dump reports. I have to click on each one in our web database and categorize it. Then, later, when I doing actual debugging, I'll go back and look at the various reports in various categories to fix the bugs.

I'm really glad I got the automated database system working before I went on vacation. I don't know how I lived without this in zMUD!!! Even when people don't enter much information about a crash (which they mostly dont) I still am getting enough information in the debug stack dump that is sent to find a lot of problems and to relate multiple crashes back to single bugs.

I've got over 400 of these crash reports, so it will take a while. But I'm much happier having too much info rather than not enough. There are a *lot* of bugs from these crash reports that haven't been mentioned in forum posts (probably because people are using the automated system, which is good).

I think ultimately this system will make it a *lot* easier and quicker for me to fix bugs, and will result in a much more stable program.

I know that Joel Spolsky has advocated automated crash reports before, and now I know why. Every software developer should be doing this!

As a side note, it appears that screen shots are not sent in some situations. Not sure why, but hopefully I can fix that in the future. But even without the screenshots I'm getting a lot of great information.

And I can tell that vacation really helped, because looking at all of these crash reports isn't causing me to get depressed for a change!
Reply with quote
Rainchild
Wizard


Joined: 10 Oct 2000
Posts: 1551
Location: Australia

PostPosted: Wed Jul 05, 2006 11:07 pm   
 
Does that crash system you have work with C++ Builder and C#.NET? It definately sounds like something I should convince work to purchase.

I know there's an tick box with the crash system for saying 'send screenshot' which is I think unchecked by default, so maybe that's why they aren't coming through.
Reply with quote
Tech
GURU


Joined: 18 Oct 2000
Posts: 2733
Location: Atlanta, USA

PostPosted: Wed Jul 05, 2006 11:12 pm   
 
I think the reason for that is that screenshots are not set by default. I think they should be, and should be unclicked if they don't want them. More often than not you'll want to send a screenshot. I know I missed it a few times because i forgot to click the checkbox.

I know there are those over dialup who may say having it by default may take too long or demand too much bandwidth, but I figure if you've chosen to debug an app it's something you can live with.
_________________
Asati di tempari!
Reply with quote
Taz
GURU


Joined: 28 Sep 2000
Posts: 1395
Location: United Kingdom

PostPosted: Wed Jul 05, 2006 11:14 pm   
 
Not sure what ports it uses to send the bug reports either since I was not able to send a bug report at work due to being blocked by the firewall I assume.
_________________
Taz :)
Reply with quote
MattLofton
GURU


Joined: 23 Dec 2000
Posts: 4834
Location: USA

PostPosted: Thu Jul 06, 2006 3:27 am   
 
Quote:

As a side note, it appears that screen shots are not sent in some situations. Not sure why, but hopefully I can fix that in the future.


I found two issues (mostly cosmetic) regarding that.

1)Mouse icons don't appear to get captured in screen captures, so bugs centering on mouse icons won't have any visible reference we can send to point you in the right direction.

2)regarding the screen-capture window of the bug reporter itself, a very iffy interface (although functionally it's quite solid). First, the window's background color appears to be the standard zmud-default light beige. That in itself isn't such a bad color. However, mistake #2 is that you put what appears to be a standard checkbox (ie, a white box with a black-color caption that says something like "click to add screenshot") directly onto it, rendering the actual checkbox itself almost completely invisible. This, too, isn't too bad by itself, but it leads us to mistake #3, in that the aforementioned checkbox is sitting directly above a large, clickable image of what is obviously a screenshot. Altogether, the checkbox's caption seems to be pointing directly to the image and leading users away from the checkbox.

The easiest (obviously) solution would be to just darken the window background color, and since the entire bug reporter seems to exist outside the reach of the theme engine there's no chance of different themes messing this up with lighter-than-intended colors. However, if this wasn't intended then you'll need to change at least the checkbox caption wording to be less ambiguous or simply get rid of the checkbox entirely (perhaps adding the logic of "should I send the image or not?" into the imagebox's change event).
_________________
EDIT: I didn't like my old signature
Reply with quote
edb6377
Magician


Joined: 29 Nov 2005
Posts: 482

PostPosted: Thu Jul 06, 2006 5:30 am   
 
Matt you beat me to it. LOL. yeah you emailed me zugg stating you werent getting screenshots with a few of mine before you left for vacation when we were trying to work out the settings problems for the 1.01 release. In order for this to succeed i had to click the image which opened in paint and then save it send. Simply because as matt noted the checkbox isnt very "User Friendly" and not enabled by default.
_________________
Confucious say "Bugs in Programs need Hammer"
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Thu Jul 06, 2006 6:04 pm   
 
The crash dump creation is from MadExcept, which is only for Delphi. It is very language dependent, since it's hardest job is determining the stack dump (routine names and line numbers) which is highly dependent on exactly how the particular language is compiled and how it uses the registers and stack. So, Delphi only. I'm sure similar things probably exist somewhere for the Microsoft languages though.

I'm not going to mess with the MadExcept source code to "tweak" the screenshot stuff. It's actually very tricky to do *any* of this. Keep in mind that when it is displaying the screenshot and other crash dump dialogs, the system has just crashed! The stack might be totally messed up, and memory might be corrupted. So it's impossible for MadExcept to use any of the Delphi VCL controls. So, the author of MadExcept creates the User Interface using low-level direct calls to the Windows GUI API. I just don't know enough about low-level Windows API stuff to mess with this. I'd just mess it up.

So things like the background color, etc won't get changed. What it *does* allow me to do is create custom "forms", like the initial username/email form, and the second form where you enter the description of the problem. I'm considering combining these two forms into a single form to make it a bit easier. I'll also check to see if I have any control over the screenshot "form" to see if I can make the checkbox caption a bit clearer.

Regarding the default screenshot checkbox option...I did that on purpose. Most of the time the screenshot isn't needed, and since it gets stored in our HelpSpot help desk database on the web site and it doesn't ever let you delete any customer issues or bug reports, I don't want the database growing really large with a bunch of un-needed screenshots.

What I was talking about is that there are a few cases where the person claims that they checked the screenshot checkbox, and yet the screenshot didn't come through. This doesn't happen very often, but it does happen enough to make me think it's not just simple user error.

As far as how the crash dumps are sent, they are sent via the normal HTTP ports and from what I can tell, it uses the WININET.DLL library, so it should be using whatever proxy or firewall settings you already have set up for Internet Explorer. So it it's not sending bug reports from your work system, your firewall must either be really restrictive or maybe you aren't using Internet Explorer and therefore don't have it's proxy stuff set up. But again, it's doing low level API calls to WININET and it's not something I want to mess with.
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Thu Jul 06, 2006 6:12 pm   
 
Oh, and I should also mention that another big part of this system is the HelpSpot software that sits on our server to receive these crash dumps. We are using HelpSpot (http://www.userscape.com ) for all of our customer support now. And it's a really flexible system for help tracking and also bug tracking. It's bug tracking stuff is pretty basic, but once I created some "custom fields" for things like the crash dump CRC value (that uniquely identifies the error and stack trace) I was able to get it working really well. Also, the author's support for HelpSpot is really great...I get responses to questions within hours. Can't say enough good things about it.

So on the server side, crash reports with the same CRC value are combined into a single "thread". Thus, if lots of people are getting the same error, I get to see all of there reports together. This made it a lot easier when I did the 1.01 version to identify those really critical issues (I had lots of duplicate crash reports all combined together). I can categorize these crashes and then add a custom field to keep track of what version of CMUD the error was fixed in.

There is a way to publish RSS feeds of various views of the help system and I will eventually put together a web page that can display the list of current bugs, list of bugs fixed in particular CMUD versions, etc. It has a way to mark the crash dump details and the screenshots as "private" so that they are not viewable to the public. I'll also be eventually adding a way to send a forum topic into the bug tracking system.

Anyway, without the HelpSpot backend, the MadExcept stuff would be only partially useful. When you have something like MadExcept which allows you to easy gather huge amounts of data about bugs, you need a good back end to organize all of that data so that it can be used. Otherwise it's easy to get overloaded with too much information.
Reply with quote
Taz
GURU


Joined: 28 Sep 2000
Posts: 1395
Location: United Kingdom

PostPosted: Thu Jul 06, 2006 7:07 pm   
 
You're right I use FF at work. I'll mess with the IE proxy setting and stuff and see if I can send a bug report in. I'll let you know how it goes.
_________________
Taz :)
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD Beta Forum All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net