Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Quite often we will get a report from a user in the field saying there was an error in our application. Frequently this leads to the typical round of "What was the error?" "I don't know, it was just an error." We of course log these faults to the log files, and we can even enable detailed debug logs, but this involves the end user changing a setting in the configuration file and then finding the correct files and then emailing them to us. As I'm sure you can all imagine, there are plenty of pitfalls and alligators in this methodology.

Recently a couple of people have used their cell phone to email me a "screen capture" of the fault, and while this helps, we still have to scrutinize the image to find the exact fault, and if enabled, the stack trace.

So this evening, I had the brilliant idea (IMHO) to encode the fault into a Datamatrix barcode image and then encourage users to send me a picture from their cell phone. I can then decode the datamatrix and get a parse-able error message!

Our core technology is machine vision, so the decoding of the datamatrix image would be trivial, I just need to find a method of generating the actual image to display in the fault handler.


share|improve this question

closed as off-topic by gnat, Bart van Ingen Schenau, MichaelT, GlenH7, Dan Pichelman Jun 26 at 20:39

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – GlenH7, Dan Pichelman
If this question can be reworded to fit the rules in the help center, please edit the question.

Instead of encoding the error data into a barcode, have you considered adding a button to the error message, allowing the user to sent an email containing the error data directly to you (similar to the dialog Windows displays when an application crashes)? Seems like the simpler thing for the user, if they have internet access from their PC. –  PersonalNexus Dec 31 '11 at 6:33
While I agree that's a good idea in most situations, this is for an industrial application where only about 1 in 25 systems have internet access. –  DaveNay Dec 31 '11 at 13:48
@DaveNay Use Zint. Its got heck a lot of formats. –  Ubermensch Feb 23 '12 at 4:47
Thank you for the suggestion, but Zint appears to be a dead project, plus it is GPL licensed which doesn't fit in with our commercial product. –  DaveNay Feb 23 '12 at 13:20
add comment

2 Answers

Have you looked at iec16022sharp? It hasn't been updated in a few years, but the code is straightforward and it seems to generate good barcodes.

share|improve this answer
add comment

Having taken a few pics of datamatrixes on screens, this will be a challenge for the users to get a clear image, especially if you encode enough information in there to be helpful to your debugging. Otherwise, this is a pretty fair idea. Unique, if nothing else.

For a better solution, the pattern for handling this problem has been largely solved. Consider when Firefox crashes, you get a dialog that asks you to report the error, then gives you a text area to fill in any details you want. One HTTP POST later and Mozilla has your crash data. A lower-tech solution here would be to generate an email for the user to send (probably using the system mailto: handler).

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.