使用 @Log4j2 log.error() 打印异常日志
public static void main(String[] args) {
int a = 10;
try {
int i = 1/0;
}
catch (Exception e) {
System.out.println("--------------------");
e.printStackTrace();// 只能输出在控制台当中,日志文件看不到
System.out.println("--------------------");
log.error(e.getMessage());// 只能输出简短的错误信息,不便于排错
System.out.println("--------------------");
log.error(e.getStackTrace().toString());// 不能输出错误信息
System.out.println("--------------------");
log.error("需要在错误日志 error 之上打锚点,报错了,a-{}",a);
//用这个去打印日志,完整的日志信息会被打印在日志之中,相当于 e.printStackTrace();
log.error("test fail-",e);// 可以在日志中输出完整的错误信息,""里要写内容,不能在此处去打错误锚点(不能使用log.error("test fail-{},{}",a,e))无法打出全部日志
System.out.println("--------------------");
log.error("test fail-{},{}",a,e);//无法打出全部日志
System.out.println("--------------------");
log.error(e.toString());// 只能输出简短的错误信息,不便于排错
}
}
--------------------
java.lang.ArithmeticException: / by zero
at com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl.main(OrderBasicServiceImpl.java:)
main 2019.11. at ::51.331 CST [] ERROR com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl main(): - / by zero
--------------------
main 2019.11. at ::51.350 CST [] ERROR com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl main(): - [Ljava.lang.StackTraceElement;@5fd4f8f5
--------------------
main 2019.11. at ::51.356 CST [] ERROR com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl main(): - 需要在错误日志 error 之上打锚点,报错了,a-
main 2019.11. at ::51.357 CST [] ERROR com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl main(): - test fail-
java.lang.ArithmeticException: / by zero
at com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl.main(OrderBasicServiceImpl.java:) [classes/:?]
--------------------
main 2019.11. at ::51.365 CST [] ERROR com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl main(): - test fail-,java.lang.ArithmeticException: / by zero
--------------------
main 2019.11. at ::51.366 CST [] ERROR com.jn.ssr.superrescue.web.order.service.impl.OrderBasicServiceImpl main(): - java.lang.ArithmeticException: / by zero
使用 @Log4j2 log.error() 打印异常日志的更多相关文章
- Springboot + SLF4j + Log4j2 打印异常日志时,耗时要5-6秒
1.使用jps -l 查看springboot项目的进程ID 2.使用命令jstack -l 进程ID > log.txt 打印堆栈信息到文件,内容如下: "http-nio-8065 ...
- Log4j2 设置控制台打印彩色日志
https://www.baidu.com/s?ie=utf-8&tn=02003390_20_hao_pg&wd=%E5%8D%9A%E5%AE%A2%E5%9B%AD%E7%99% ...
- ThreadPoolExecutor执行任务,异常日志缺失问题
之前在使用自定义线程池异步执行耗时任务时,一直记着如果业务方法抛出异常没有捕获,那么是看不到日志框架输出的异常日志的,所以总是在业务方法中包裹一层try-catch捕获可能发生的异常.也未去深入为什么 ...
- 异常日志文件errorlong
#region log ////////////////////use/////////////// /// <summary> /// 异常日志 /// </summary> ...
- 在error日志打印异常
在日志中打印异常,经常会看到以下的写法: logger.error(e.getMessage()); 或者是: e.printStackTrace(); 这两种其实都不太好. e.getMessage ...
- SpringBoot2.0 基础案例(02):配置Log4j2,实现不同环境日志打印
一.Log4j2日志简介 日志打印是了解Web项目运行的最直接方式,所以在项目开发中是需要首先搭建好的环境. 1.Log4j2特点 1)核心特点 相比与其他的日志系统,log4j2丢数据这种情况少:d ...
- 二:SpringBoot-配置Log4j2,实现不同环境日志打印
SpringBoot-配置Log4j2,实现不同环境日志打印 日志打印之外观模式 1.日志配置 2.Log4j2的配置文件 3.简单的测试程序 日志打印之外观模式 每一种日志框架都有自己单独的API, ...
- 将Error异常日志从普通日志中剥离
开发过程中经常需要调试和线上环境查看异常日志的需求,但普通消息与异常消息混在一起实在是非常难得找,上则NM的文档够你头痛,所以就将Error级别的日志抽离出来. 本示例采用log4net来配置: 1. ...
- log.error("异常:", e);与log.error(e.getMessage());区别
转: log.error("异常:", e);与log.error(e.getMessage());区别 2017年04月28日 14:51:32 行走的soong 阅读数:120 ...
随机推荐
- array_shift — 将数组开头的单元移出数组
<?php $stack = array("orange", "banana", "apple", "raspberry&q ...
- php结合Redis实现100万用户投票项目,并实时查看到投票情况的案例
场景:某网站需要对其项目做一个投票系统,投票项目上线后一小时之内预计有100万用户进行投票,希望用户投票完就能看到实时的投票情况 这个场景可以使用redis+mysql冷热数据交换来解决. 何为冷热数 ...
- spring无法接收上传文件
现象 前端用ajax方式提交表单,代码类似于下面的例子. var formData = new FormData(); // HTML 文件类型input,由用户选择 formData.append( ...
- openwrt配置内核,加载air720 4G模块的USB串口设备
1,进入openwrt源码包,键入 make menuconfig 2,配置如下 kernel modules ---> USB Support---> <*> kmod-u ...
- Python每日一题 003
将 002 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中. 代码 import pymysql import uuid def get_id(): for i in ra ...
- subsequence 1
题目链接 题意:给你两个字符串都是数字,让你求第一个字符串的子序列中大于第二个字符串的个数. 思路:dp[i][j] 表示 str1的前i个,匹配 str2的前 j 个的种类数,那么 if(s[i] ...
- SQL中循环的实现方式
一.第一种方法,游标 定义游标 DECLARE cur_ClubHeadCash CURSOR FAST_FORWARD READ_ONLY FOR,循环每行 FETCH NEXT FROM cur_ ...
- jQuery函数API,各版本新特性汇总
jQuery API 速查表 选择器 基本 #id element .class * selector1,selector2,selectorN 层级 ancestor descendant pare ...
- 腾讯云ubuntu16.04安装MySql5.7未提示密码设置且无法登陆解决
一.安装 sudo apt-get update sudo apt install mysql-server 二.修改密码 1.由于安装过程中未提示要设置密码,且使用sudo mysql_secure ...
- embed元素 autostart false 失效时的解决方法
embed元素 autostart false 失效时的解决方法 最近在工作中碰到了在网页中嵌入播放器播放声音文件的需求,最后使用了embed元素 代码如下: <embed src='1093. ...