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() 打印异常日志的更多相关文章

  1. Springboot + SLF4j + Log4j2 打印异常日志时,耗时要5-6秒

    1.使用jps -l 查看springboot项目的进程ID 2.使用命令jstack -l 进程ID > log.txt 打印堆栈信息到文件,内容如下: "http-nio-8065 ...

  2. 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% ...

  3. ThreadPoolExecutor执行任务,异常日志缺失问题

    之前在使用自定义线程池异步执行耗时任务时,一直记着如果业务方法抛出异常没有捕获,那么是看不到日志框架输出的异常日志的,所以总是在业务方法中包裹一层try-catch捕获可能发生的异常.也未去深入为什么 ...

  4. 异常日志文件errorlong

    #region log ////////////////////use/////////////// /// <summary> /// 异常日志 /// </summary> ...

  5. 在error日志打印异常

    在日志中打印异常,经常会看到以下的写法: logger.error(e.getMessage()); 或者是: e.printStackTrace(); 这两种其实都不太好. e.getMessage ...

  6. SpringBoot2.0 基础案例(02):配置Log4j2,实现不同环境日志打印

    一.Log4j2日志简介 日志打印是了解Web项目运行的最直接方式,所以在项目开发中是需要首先搭建好的环境. 1.Log4j2特点 1)核心特点 相比与其他的日志系统,log4j2丢数据这种情况少:d ...

  7. 二:SpringBoot-配置Log4j2,实现不同环境日志打印

    SpringBoot-配置Log4j2,实现不同环境日志打印 日志打印之外观模式 1.日志配置 2.Log4j2的配置文件 3.简单的测试程序 日志打印之外观模式 每一种日志框架都有自己单独的API, ...

  8. 将Error异常日志从普通日志中剥离

    开发过程中经常需要调试和线上环境查看异常日志的需求,但普通消息与异常消息混在一起实在是非常难得找,上则NM的文档够你头痛,所以就将Error级别的日志抽离出来. 本示例采用log4net来配置: 1. ...

  9. log.error("异常:", e);与log.error(e.getMessage());区别

    转: log.error("异常:", e);与log.error(e.getMessage());区别 2017年04月28日 14:51:32 行走的soong 阅读数:120 ...

随机推荐

  1. Concurrent - 多线程

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11426916.html Java中有几种方法可以实现一个线程? 继承Thread类(不支持多继承) 实 ...

  2. Vue项目中使用Vux

    最近想用vue+vux写一个项目,于是到vux的官网看了文档开始着手搭建项目,但是遇到一些坑.下面简单说下安装vux 的过程.默认已安装vue环境1.安装vux npm install vux --s ...

  3. One Switch for Mac 一键切换系统各项功能

        One Switch 是火球工作室推出的最新 Mac效率软件,它在 Menubar 菜单里集成了隐藏桌面(图标).切换 Dark Mode.保持亮屏.开启屏保的一键切换按钮,将以往这些以独立小 ...

  4. [jzoj5840]Miner 题解(欧拉路)

    首先考虑第一问.每个联通块的情况是相对独立的,所以可以分别求每个联通块的答案.无向图中存在欧拉路的条件是奇点数为0或2,那么合法方案肯定是tp到一个奇点,通过一条欧拉路到另一个奇点,再tp到另一个奇点 ...

  5. Stream流式编程

    Stream流式编程   Stream流 说到Stream便容易想到I/O Stream,而实际上,谁规定“流”就一定是“IO流”呢?在Java 8中,得益于Lambda所带来的函数式编程,引入了一个 ...

  6. Android 架构师技能图谱

    # Android 架构师技能图谱 ## 架构与设计 - 设计模式 - 重构 - 技术选型 - 特性 - 可用性 - 性能 - 包大小 - 方法数 - 文档 - 技术支持 - UI架构模式 - MVC ...

  7. 个人笔记 - MATLAB

    1.教程 2.基本知识 2.1 帮助文档设置成中文:链接1 2.2 多行注释: 链接1 2.3 MATLAB基本数据类型: 链接1  链接2 2.4 matlab中的 ndims(a).length( ...

  8. Android 发布自动版本号方案

    以前看到一些自动化版本号打包的文章.如果您的项目是用 Git 管理的,并且恰巧又是使用 Gradle 编译(应该绝大部分都是这样的了吧?),本文试图找到一种更加优雅的自动版本管理方法. 背景 我们都知 ...

  9. javascript实现继承的六种方式

    ​ /*实现继承的六种方式*/ /*1.扩展原型对象的方法实现继承*/ function Foo1(){} //在Foo1函数上扩展一个fn1方法,由构造函数创建的对象都具有fn1这个方法 Foo1. ...

  10. Python List列表的操作说明

    Python中List的N种操作,其简单程度令人叹为观止... C:\Users\rhys>python Python 2.7.14 (v2.7.14:84471935ed, Sep 16 20 ...