Jump to content

Exception Handling Improvements [Stage #1 Completed]


Legolash2o
 Share

Recommended Posts

To improve Win Toolkit greatly and also a learning experience for me. I've decide do redo all exception handling, error boxes, log saving and uploading. I've been wanting to do this for a very long time as there has been a long standing issue when uploading error logs, which has affected about 95% of uploaded error logs. Basically the log file has weird ASCII characters, squares, etc... Which makes it unreadable.

This issue of course helps nobody but rewriting it is a huge task! A lot of it will be backend code so you shouldn't really notice it. So now you're probably wondering how the changes will affect you. So here are the improvements I will be implementing.

NOTE: No personal information is sent in logs. Just details about the computer hardware and the error details.

Your benefits:

  • Exceptions will be shown in YOUR language but when uploading and writing to a file. It will also add English if possible. This means in your log file, it will show both languages.
  • Error logs file name will start with version number and then a unique error number. Easier to find a specific error.
     

My benefits:

  • Uploaded error logs will be uploaded in both languages so I can understand it.
  • Upload logs will start with the unique identifier so that all errors which are the same will be group together. This will save me HUGE amount of time.
  • Get rid of useless logs which help nobody

 

Other Changes:

  • Better log layout 
  • Error logs will automatically upload in the background there and then rather than at close. I may add a balloon tip near the clock to show when one has been uploaded/saved.
  • Uploading will upload the string directly rather than the text file which is where most things of wrong with the characters.

It's a huge task and I will be dedicating tonight to get it done. The biggest change you will notice is that exceptions will be shown in your language and bugs will get fixed quicker!

Any questions, small requests or suggestions for this?

 

Stage 1 (Done):

  • Make new abstract class and efficient methods to get the job done.
  • Record relevant details to help solve errors.
  • Record more exception details such as stacktrace.
  • BIG: Make logs readable from any language.
  • Have a simple code to know which bugs are big, small or unhandled errors.
  • Automatically give similar errors a unique ID so all the same bugs are grouped together.
  • Show exceptions in user language.

Stage 2 (W.I.P):

  • Gradually upgrade old error messages into new ones with more detail
  • Show more information to user by clicking a more detail button.
Link to comment
Share on other sites

Just finished the back end of the new error reporting and it's working like a charm. I could not, however, get the errors to translate into English but they now uploading correctly and with foreign characters. Finally fixing the big issues once and for all. I can just use a translator if I get stuck with that anyway. 

 

I also managed to make it notify you with a balloontip near the clock when a log has been saved and uploaded with it's location.

Link to comment
Share on other sites

When an error log has been saved or uploaded you will receive a prompt like this.

post-10183-0-73444200-1395218900_thumb.p

 

Note: There will only be 1 icon instead of 2 like in the picture.

 

When you click it. It will open the log in your browser.

post-10183-0-48359200-1395219548_thumb.p

 

Feedback?

 

Also, can anybody think of anything else I can put in an error log? :P

Link to comment
Share on other sites

The new system is now live in v1.4.34.13!

 

Not all of the error boxes have been updated and I will do those gradually over the next couple of days. Easy task just lots of them :P If you see an error box which could do with more description just let me know. :)

Link to comment
Share on other sites

Just a suggestion, but  when there are no test builds, then maybe you should change the link in your sig to point to the download page?  That way, "Latest builds" will always point to the latest version of Win Toolkit.

 

Cheers and Regards

Link to comment
Share on other sites

Started to receive my first bunch of errors reports and they look beautiful! This mission was a complete and utter success and could not have gone better. I'm already fixing bugs, especially ones which affect integrating drivers!!!!!! I had to make a few simple changes but nothing special :)

 

Stage 1 (read 1st post) is well and truly done, so excited!

 

*1.4.34.14^FIX: .BMP driver files did not get expanded
*1.4.34.14^FIX: .VXD driver files did not get expanded
*1.4.34.14^FIX: .MPG driver files did not get expanded
*1.4.34.14^FIX: .EN driver files did not get expanded
*1.4.34.14^FIX: .LNG driver files did not get expanded
*1.4.34.14^FIX: .NT driver files did not get expanded
*1.4.34.14^FIX: .DS driver files did not get expanded
*1.4.34.14^FIX: .RTF driver files did not get expanded
*1.4.34.14^FIX: .BAT driver files did not get expanded
*1.4.34.14^FIX: .FON driver files did not get expanded
*1.4.34.14^FIX: .CN driver files did not get expanded
*1.4.34.14^FIX: .AX driver files did not get expanded
Link to comment
Share on other sites

Nope too much effort but I have however updated the test page :) If there are no test builds it will automatically go to the main download page.

 

Better? :P

 

Can you do a vice versa where i could go to the main downloads page and click on a link to the test builds too.

 

Ps: awesome!

 

I guess for issues that you've picked up on, you could make a sticky in the bugs thread saying you know of these current bugs/errors and which ones you need more details of.

That way it also cuts down on the threads created for it?

Edited by spidernz
Link to comment
Share on other sites

With the successful release of it yesterday. I manage to fix 15 issues in about an hour. I've also made some changes to what the log looks like and how it's displayed on the server. Some enhancements:

  • Using MD5 instead of GetHashCode to create more uniqueness as some errors had the same ID :(
  • Included more CPU, RAM and HDD information
  • Added a custom stack trace which will hopefully be a brilliant addition.
  • Increased efficient of log uploading. Ran preparation code twice when it only needed to be ran once.
Although you may think it's not a major feature, I believe it's the most important thing I've done for a long time! It allowed me to fix a bunch of issues within an hour and with this new system, I can fix more!

Click here to view a log file sample.

1. Can you do a vice versa where i could go to the main downloads page and click on a link to the test builds too.

2. I guess for issues that you've picked up on, you could make a sticky in the bugs thread saying you know of these current bugs/errors and which ones you need more details of.

That way it also cuts down on the threads created for it?

1. Done

2. In the future once I've got the damn thing finished. I can provide the link to the logs so people can see if it's a big problem or a one off. It would also allow you guys if you're curious/bored to help see what the cause of a problem is by viewing different environments it's being run on.

The logs don't contain anything personal or that can be linked back to the user anyway.

Link to comment
Share on other sites

 

1. Can you do a vice versa where i could go to the main downloads page and click on a link to the test builds too.

1. Done

 

I don't know if it is because of something you did or a problem with the board, but now the link on this page, ie currently this one, sometimes takes a LOOOONG time to get to the page with the actual download links and sometimes even times out.  I don't know if there is anything you can do, but thought I would report it.

EDIT: It's probably something screwy with the board, because this post also timed out when I was trying to make it.

 

Cheers and Regards

Link to comment
Share on other sites

EDIT: It's probably something screwy with the board, because this post also timed out when I was trying to make it.

 

Cheers and Regards

 

 

Well approx 15 minutes ago,the whole Wincert.net timed out for me...

And its not the first time, so go figure.

Edited by Etz
Link to comment
Share on other sites

Sorry for lots of releases in the past few days.

 

I'm still receiving big issues on the old system which I've moved over to the new system in the latest release. This will allow me to find them once and for all. I've also fixed a few important bugs with the RunOnce tool so it was worth it. I'm currently tracking a really nasty bug which about 90% of the error logs I receive so it was really important that I move it over to the new system.

 

I've also made it so that the 'Details' button on the error box shows you ALL the information it has collected rather than just a few bits and bobs of useless crap.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...