class 1:
public static void TypeOneException2TypeTwoException(TypeOneException exception)
throws TypeTwoException {
if (exception == null)
throw new IllegalArgumentException(
"TypeOneException shouldn't be null");
LOG_SERVICE.debug(exception.getMessage(), exception); //log it
if (exception instanceof TypeTwoException)
throw new TypeTwoException(
DavServletResponse.SC_METHOD_NOT_ALLOWED,
exception.getMessage());
class 2:
public void callerOne(){
try{
}catch(TypeOneException exception){
LOG_SERVICE.debug(exception.getMessage(), exception); //is still need log it? any benifit?
TypeOneException2TypeTwoException(exception)
}
class 3:
public void callerTwo(){
try{
}catch(TypeOneException exception){
LOG_SERVICE.debug(exception.getMessage(), exception); //is still need log it?
TypeOneException2TypeTwoException(exception)
}
class 4:
public void callerTwo(){
try{
}catch(TypeOneException exception){
LOG_SERVICE.debug(exception.getMessage(), exception); //is still need log it?
TypeOneException2TypeTwoException(exception)
}
标题为。我在class1中记录了错误。如果有需要在调用者中记录它(class2,3,4)?如果需要,任何好处都存在?提前致谢。如果存在重复代码,是否需要?
答案 0 :(得分:0)
在多个级别进行日志记录没有任何问题。在许多情况下,记录和抛出异常的较低级别调用将在较大操作的上下文中使用。因此,通过将其记录在更高级别来帮助添加上下文。
请记住,日志记录是可配置的,因此您可以打开/关闭每个记录器的日志记录(通常按类级别隔离)。