Troubleshooting user issues - techniques?

This is a pretty general question - but what are some of your strategies / procedures for troubleshooting issues that users find?

Specifically, I'm talking about web based programming - a combination of PHP, mySQL, Javascript (Ajax).

We're running an commerce platform and we've done successful test transactions on most major browsers. We've done in person user testing to discover and fix bugs. And we've processed hundred of orders without a hitch. However, invariable every once in a while a user will come across a bug we've never seen before.

The most frustrating thing is often I can not recreate the bug, so its very very hard to try and fix. It's also frustrating going back and forth with a customer trying to work out our technical glitch (or determine if they're doing something wrong)...while potentially frustrating them and loosing an order.

So what do you do when a user writes in about a bug you can't recreate? Do you have any tips on how you isolate the problem, the steps you take? etc.

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

My best advice is:

(1) Have the users include the software versions, browser, and most importantly the steps they did to cause the bug.

(2) Add logging to your software so that you have a record of what transpired under the covers.  Have the user send the log file with their bug report.

This should help. Best of luck.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Screen shots of the active window helps a lot as well. ( Alt + Print Scrn )
Many errors only manifest under high load.  An example would be a timeout waiting for a shared resource--due to deadlock or a long running thread, that php might throw back to the user's browser.  Have you load tested your application with a tool like HP (Mercury) Loadrunner?  You can create many concurrent simultaneous virtual users which hit your application, and have the tool track, for example, any errors thrown.

You also want to log into the management console of your web/app server and make sure error logging is enabled, possibly setting error/event logging to be more detailed-- although making sure not to set event logging TOO detailed which may affect performance.  
Enlist the aid of the user OR their more tech-savvy technical advisors.

For example we support teachers across the state and districts are known for "locking down" the district computers. Therefore when a teacher calls with a problem which we've been unable to duplicate we call their district (or regional) Help Desk staff and enlist their aid.

We ask them to see if they can duplicate the problem and if they would be willing to "test" our solutions once we've changed the code. This worked well for us AND built up our network of our website knowledgeable people!
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Project Management

From novice to tech pro — start learning today.