Well, error and fatal have overloaded for throwable since existing code used this... error(e) can still be done the old way (I was coding to keep consistent but we can improve some too)
Yes, toString() on the throwable object just is a short description, the message, yup. Bad (my opinion)
debug(m: => String) did not get debug(m: => Throwable) because no one was doing that yet in the code.
as far as good, my preference/opinion is if you are going to log something to make it useful and informational. stack traces are best
if we accept throwable for every level we could always take that object and do getStackTrace().toString() http://download.oracle.com/javase/6/docs/api/java/lang/Throwable.html#getStackTrace() and then log that result underneath them
def debug(e: => Throwable): Any =
so folks can do error(e) and we can still get what we want/need in the logs
so how about I change all of the levels in LogHelper to accept throwable as a paramater and to use this stacktrace extraction and to string that for logging?