You might consider using clj-stacktrace for parsing, filtering, and or
formatting Clojure stacktraces:

http://github.com/mmcgrana/clj-stacktrace

For example, if you want to differentiate between Java, core Clojure,
and user Clojure stack trace frames in a terminal session, you could
try:

(use 'clj-stacktrace.repl)
(bad)
(pst+)

Where pst+ stands for "print stack trace plus" and prints a
horizontally-aligned, cleanup-up, and color-coded stack trace to the
console:

http://img.skitch.com/20090721-efy2e4wgsrhxs2cxsbnu4c4ftx.png

If you want to implement custom stacktrace-cleaning functionality
(e.g. for VimClojure), check out clj-stacktrace.core/parse-exception.
This will give you a nice Clojure data structure containing cleaned-up
exception information. For example, it will parse out file and line
numbers, identify which lines correspond to Java and which to Clojure
source files, and will give you clean strings for the namespace and
var name for each clojure frame.

I hope this helps,
- Mark


On Jul 21, 12:15 pm, Mark Volkmann <r.mark.volkm...@gmail.com> wrote:
> On Mon, Jul 20, 2009 at 10:53 PM, Phil Hagelberg<p...@hagelb.org> wrote:
>
> > One common criticism of Clojure is that the stack traces are... less
> > than helpful. While it's true that the verbosity is great if you're
> > debugging Clojure itself, I've found that more often it just obscures
> > the important lines.
>
> Agreed. It's seems I'm repeatedly searching through 30+ line stack
> traces trying to find the few lines that reference the code I wrote. I
> don't use emacs though, I use VimClojure. I seem to recall someone
> providing a solution for filtering the stack trace output when running
> from a terminal window. Doesn't anyone remember the name of that or
> any other solutions to this?
>
> --
> R. Mark Volkmann
> Object Computing, Inc.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to