[racket] PLaneT package for global error logging and suggestions (a la stackoverflow)

From: Hugh Myers (hsmyers at gmail.com)
Date: Fri Feb 4 23:03:52 EST 2011

My usual approach to this problem is to type the error message into
Google, hit return and examine the top hits. There is of course no
guarantee that this will produce relevant information, but I'd say the
success rate is > 80%. That said it might be useful to combine this
into the project somehow? I'd also point out that the information on
fixing the problem might benefit from a wiki-approach. I've had
experience with some problems that even when identified still took a
great deal of effort to finally fix. Our assumptions about equipment
similarity (hardware too) often lead us astray. I cite a resent
problem with time stamping email that proved intractable until I
discovered that many pieces of other wise harmless windows software
depend on POSIX approaches! In the case of time stamping the value of
'TZ' is crucial--- in my case neither MST or MDT work. It has to be
set to MST7MDT in order for Gmail and LaTeX to be jointly happy!

On Fri, Feb 4, 2011 at 8:45 PM, Greg Hendershott
<greghendershott at gmail.com> wrote:
> This is a great idea and it's great you put it out there to see what happens.
>
> A couple very small things I noticed on the web site:
>
> 1. Some error messages include the path to a file like \home\{username}\foo.rkt:
> a. Some people may not want {username} in the database?
> b. The unique pathname will cause what otherwise be similar errors not
> to be grouped?
>
> 2. Because there are no user accounts you can do things like up- and
> down-vote things indefinitely. (Not having user accounts is a huge
> simplification so I understand why not yet, or maybe not ever.)
>
> Cool idea and good implementation.
>
> On Fri, Feb 4, 2011 at 5:03 PM, John Clements <clements at brinckerhoff.org> wrote:
>> I've now released ErrRecorder as a PLaneT package.
>>
>> http://li21-127.members.linode.com:8021/errrecorder
>>
>> (soon to be just plain www.errrecorder.org)
>>
>> ErrRecorder is a global database of error messages that allows users to suggest solutions to common errors.  I've been running it on my lab machines locally for ~10 weeks of class, and we're up to about 13K error messages.
>>
>> If you're interested in installing it, you need to require it (once):
>>
>> (require (planet clements/errrecorder))
>>
>> ... and then restart DrRacket to see it take effect. For instance, try evaluating (/ 1 0) and then clicking on the magnifying glass icon.
>>
>> If you have any interest in the tool, please let me know! Suggestions also greatly appreciated.
>>
>> Finally: special thanks to Josh Robinson, the student that implemented it.
>>
>> John Clements
>>
>>
>>
>> Technical details:
>>
>> This tool installs an error-display-handler that takes the first 200 chars of any error message and sends it to a single server. It then displays a magnifying glass next to the error message. Clicking this icon opens a browser window that searches for the given error is the database. The client-side is about 300 lines of racket, with no planet-requires.
>>
>> The server uses the MongoDB database along with Jay McCarthy's mongodb package to log error messages, and to collect them into "groups" of similar-looking error messages. Its web interface allows users to suggest solutions to groups of problems. The server logs error strings and dates, but not IP addresses or any other identifiable user data.
>>
>>
>>
>> _________________________________________________
>>  For list-related administrative tasks:
>>  http://lists.racket-lang.org/listinfo/users
>>
>
> _________________________________________________
>  For list-related administrative tasks:
>  http://lists.racket-lang.org/listinfo/users
>



Posted on the users mailing list.