捕获异常后用Log4j记录异常信息方法及工具类
来源:互联网 发布:淘宝怎么开直播卖东西 编辑:程序博客网 时间:2024/05/16 06:41
配置log4j的配置文件,即便是把等级调整到debug,当出现异常的时候,只有控制台能看到,log日志文件却没有任何记录。
以前没有可以去关注过这块,这次打框架,发现这对后期排查问题不是很友好。
后来才反应过来,信息需要手动记录,这才反应过来曾经写的都是logger,info(...)。
当然,记录信息也是这样。当然,写一个工具类会更方便,贼方便。
以下是找到的一个现成的工具类,贴出来
(关于工具类中使用的@Component、@Autowired、@PostConstruct 注解是我个人因需要记录信息入库而需要注入bean,具体下篇文章写,如不需要删除即可)
@Component
public class LogTool {@Autowired private XxxMapper xxxMapper; public static LogTool logTool; @PostConstruct public void init() { logTool = this; } public static void info(Class logClass, Object e) { Logger logger = Logger.getLogger(logClass); if (e instanceof Exception) { logger.info(getException((Exception) e)); } else { logger.info(e.toString()); } } public static void warn(Class logClass, Object e) { Logger logger = Logger.getLogger(logClass); if (e instanceof Exception) { logger.warn(getException((Exception) e)); } else { logger.warn(e.toString()); } } public static void debug(Class logClass, Object e) { Logger logger = Logger.getLogger(logClass); if (e instanceof Exception) { logger.debug(getException((Exception) e)); } else { logger.debug(e.toString()); } } public static void error(Class logClass, Object e) { Logger logger = Logger.getLogger(logClass); String msg ; if (e instanceof Exception) { msg = getException((Exception) e); } else { msg = e.toString(); } logger.error(msg); } public static void fatal(Class logClass, Object e) { Logger logger = Logger.getLogger(logClass); if (e instanceof Exception) { logger.fatal(getException((Exception) e)); } else { logger.fatal(e.toString()); } } public static String getException(Exception e) { StackTraceElement[] ste = e.getStackTrace(); StringBuffer sb = new StringBuffer(); sb.append(e.getMessage() + " "); for (int i = 0; i < ste.length; i++) { sb.append(ste[i].toString() + " "); } return sb.toString(); }
阅读全文
0 0
- 捕获异常后用Log4j记录异常信息方法及工具类
- 用Log4j记录你的异常信息
- 编程必备*错误异常信息记录工具—log4j使用方法
- python异常信息捕获方法整理归纳
- 捕获异常及自定义异常类
- 捕获异常信息
- 捕获异常信息
- js异常分类,异常信息,异常捕获
- Spring 异常捕获+log4j日志
- iOS常用捕获异常及处理方法
- struts2全局异常处理及配合log4j异常日志记录
- 《异常捕获及处理》
- 异常捕获及上传
- 异常捕获及处理
- 捕获异常方法
- WPF捕获异常方法
- Android捕获应用的异常信息-封装的很好的工具类
- JQuery $.ajax 捕获异常信息
- 平年和闰年的区别
- C++
- [日推荐]『吉他课』海量免费吉他自学课程,帮你快速入门到精通
- Android 中的 IPC 方式二:使用文件共享
- 转JVM结构、GC工作机制详解
- 捕获异常后用Log4j记录异常信息方法及工具类
- struts2获取requestd session 等web元素的四种方式
- C++不同类型字符串之间的相互转换
- 为什么完美的 lambda 表达式只有一行
- Xmodem接收的代码
- 个人认为:vue最好的源码解读
- jquery 关闭弹窗时自动关闭
- OpenCV3.2.0 双目标定+立体匹配(官方自带例子的使用方法)
- 懒人读算法(一)-寻找名人