设为首页 加入收藏

TOP

Java异常及日志注意事项(二)
2018-07-13 06:07:12 】 浏览:218
Tags:Java 异常 日志 注意事项
ble信息,因为logger.error(msg)和logger.error(msg,e.getMessage())这样的日志输出方法会丢失掉最重要的StackTrace信息。


  Void foo(){


        Try{


      ......


         }catch(Exception e){


                Logger.error(e.getMessage());//错误


                Logger.error(“msg”,e.getMessage());//错误


      Logger.error(“msg”,e);//正确


         }


  }


  3)      对与不是特别重要的异常,不允许记录日志后又抛出异常,因为这样会多次记录日志,只允许记录一次


  Try{


    ......


  }catch(Exception ex){


    Logger.error(errorMessage,ex);


         Throw new UserSercviceException(errorMessage,ex);


  }


  4)      不允许出现System print(包括System.out.println和System.error.println)语句。


  5)      不允许出现e.printStackTrace。


  6)      日志性能的考虑,如果代码为核心代码,执行频率非常高,则输出日志建议增加判断,尤其是低级别的输出<debug、info、warn>。


  7)      有意义的日志


    通常情况下在程序日志里记录一些比较有意义的状态数据:程序启动,退出的时间点:


    程序运行消耗时间;耗时程序的执行进度;重要变量的状态变化。


    除此之外,在公共的日志里规避打印程序的调试或者提示信息。


  说明:大量地输出无效日志,不利于系统性能提升,也不利于快速定位错误点。记录日志请思考:这些日志真的有人看吗?看到这条日志你能做什么?能不能给问题排查带来好处?


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇C/C++柔性数组成员 下一篇C/C++字节对齐

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目