Search code examples
c#desktop-applicationbug-reporting

What information do you request when resolving an issue on a client's box using a desktop app?


We write a Windows desktop application that is installed on a few thousand computers that we have no access to. When one of these users reports a bug, even if the description is quite thorough, there is other information which may be helpful.

We are currently working on an automated feedback agent, which means we will have access to very detailed information. But like a kid in a candy store, we're not sure where to start. What information would you include in your feedback package in the same case? What is useful to help us reproduce there error?

What we've got so far is:

  • The version number of our app,
  • OS and OS version number
  • Proxy information
  • .NET version and update number
  • Information specific to our app (eg. data versions)
  • Access and error logs

Note that this is similar to this question, however we're not so much interested in getting info when the program crashes as we are as when the user experiences a bug.

Edit: Clarification: not asking for what information the user should give in the case of a bug, but rather what information should we gather programmaticaly?


Solution

  • Even if you have all of that information, reproducing the issue can be difficult. When users describes how they created the bug they're often mistaken about key steps - it's hard for them to know what areas are critical when they don't know the inner workings of the application. You might want to implement a way of tracking user actions, such as root-level event handling or some other means - if you have undo/redo functionality then I'm sure this would suffice. You could then include the last (x) steps of the action chain in the error report.