Часто весь стек исключения не нужен для вывода в логи. Иногда достаточно указать только метод, в котором это исключение произошло. Его можно прочитать из стека исключения. Это довольно медленно, но экономит место в лог файле и повышает его читаемость.
public class MyException extends Throwable {
...
public String getTopStackPosition(){
StringBuffer thePosition = new StringBuffer();
StackTraceElement theElement[] = this.getStackTrace();
if(theElement.length > 0){
thePosition.append( theElement[0].getClassName() );
thePosition.append( " Line:");
thePosition.append( String.valueOf( theElement[0].getLineNumber() ) );
}
else thePosition.append( "unknown position");
return thePosition.toString();
}
...
}
Комментариев нет:
Отправить комментарий