log4j日志输出框架
什么是log4j框架呢?
log4j是一个日志输出框架,用于输出日志的。比如MyBatis的日志就是通过log4j输出的,主流框架都是log4j输出的,Spring框架
也可以通过log4j输出日志!!
log4j的功能类似于System.out.println(),那为什么要用log4j呢?
因为它提供了强大的日志输出的自定义功能。
1.通过及级别输出日志(调试DEBUG、信息INFO、警告WRAN、错误ERROR、致命错误FATAL)
2.可以指定输入到控制台,输入到文件。
3.可以设置输出的日志格式
log4j框架的配置及测试代码
1.导入log4j的jar包
2.在src下创建一个log4j.propertis文件
注意:文件名必须为log4j.propertis
#log4j的声明,格式为:log4j.rootLogger=输出等级,输出策略名1,输出策略名2,输出策略名3....
##输出日志等级选项
##DEBUG 调试输出日志
##INFO 信息输出日志
##WARN 警告输出日志
##ERROR 错误输出日志
##FATAL 致命错误输出日志
log4j.rootLogger=DEBUG,A1,A2,A3 #A1策略的声明
##指定输出的类型(类全限制名),ConsoleAppender表示控制台输出
##ConsoleAppender 控制台输出
##FileAppender 通过文件输出
##DailyRollingFileAppender 以文件输出,每天产生一个日志文件
##RollingFileAppender 以指定的大小来产生一个日志文件
##WriterAppender 以流的方式输出文件到指定的设备 log4j.appender.A1=org.apache.log4j.ConsoleAppender
##指定该类型的一些属性,layout,值的是使用声明格式输出
##PatternLayout,自定义输出日志的格式
##HTMLLayout ,使用HTML文件输出
##SimpleLayout ,包含日志信息的级别和信息字符串
##TTCCLayout ,包含日志产生的时间、线程、类别等等信息
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
##设置自定义的输出格式规则
log4j.appender.A1.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n #A2策略的声明
log4j.appender.A2=org.apache.log4j.FileAppender
##创建文件路径
log4j.appender.A2.file=e:/log/lo4j.log
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n #A3策略的声明
log4j.appender.A3=org.apache.log4j.FileAppender
log4j.appender.A3.file=e:/log/lo4j.html
log4j.appender.A3.layout=org.apache.log4j.HTMLLayout
测试代码:
package cn.sebb; import org.apache.log4j.LogManager;
import org.apache.log4j.Logger; public class Log4jTest { public static void main(String[] args) {
//获得Logger对象,输出日志,LogManager对象默认获得的配置文件是classpath根目录的log4j.properties文件
//日志的级别:DEBUG < INFO < WARN < ERROR < FATAL
//日志输出,根据配置的最低级别输出
Logger logger=LogManager.getLogger(Log4jTest.class);
//什么时候写debug,当我们需要通过调试信息分析逻辑时,将调试信息写在DEBUG级别里面
logger.debug("调试日志");
//什么时候写info,希望在试运行的时候,输出的调试信息
logger.info("信息日志");
//代码可以会出现问题的地方,设置警告日志
logger.warn("警告日志");
//报异常的时候,我们使用错误日志
logger.error("错误日志");
//特别重要的错误信息
logger.fatal("致命错误日志");
} }
log4j日志输出框架的更多相关文章
- log4j日志输出级别变更
1. 现阶段log4j日志输出配置 示例:基础服务日志配置 #DEBUG < INFO < WARN < ERROR < FATAL\u65E5\u5FD7\u7684\u ...
- 在android中配置 slf4j + log4j 日志记录框架
需求: 在项目开发中,需要记录 操作日志 .起初自己写了个简单的日志记录文本写入到文本的方法,后来随着项目的膨胀,需要考虑更多的操作,开始考虑性能问题. 实现: 考虑使用 slf4j + log4j ...
- web项目Log4j日志输出路径配置问题
问题描述:一个web项目想在一个tomcat下运行多个实例(通过修改war包名称的实现),然后每个实例都将日志输出到tomcat的logs目录下实例名命名的文件夹下进行区分查看每个实例日志,要求通过尽 ...
- log4j日志输出到web项目指定文件夹
感谢 eric2500 的这篇文章:http://www.cxyclub.cn/n/27860/ 摘要:尝试将log4j的文件日志输出到web工程制定目录,遇到了很多问题,最终在eric2500的指导 ...
- log4j日志输出使用教程
Log4j是帮助开发人员进行日志输出管理的API类库.它最重要的特点就可以配置文件灵活的设置日志信息的优先级.日志信息的输出目的地以及日志信息的输出格式.Log4j除了可以记录程序运行日志信息外还有一 ...
- log4j日志输出性能优化-缓存、异步
转载 1.log4j已成为大型系统必不可少的一部分,log4j可以很方便的帮助我们在程序的任何位置输出所要打印的信息,便于我们对系统在调试阶段和正式运行阶段对问题分析和定位.由于日志级别的不同,对系 ...
- log4j日志输出到日志文件中和控制台中 +log4j配置详解
1.引入log4j的jar包 https://mvnrepository.com/,可以找到log4j的jar和依赖. 2.创建log4j.properties,并配置log4j #设置日志的级别 , ...
- log4j日志输出使用_1
转自https://www.cnblogs.com/sky230/p/5759831.html Log4j是帮助开发人员进行日志输出管理的API类库.它最重要的特点就可以配置文件灵活的设置日志信息的优 ...
- iOS开发进阶 - 日志输出框架CocoaLumberjack与XcodeColors插件的简单使用(swift版)
CocoaLumberjack是Mac和iOS上一个集快捷.简单.强大和灵活于一身的日志框架.XcodeColors是用于控制台着色的工具,配合着CocoaLumberjack用有更好的效果,不废话, ...
随机推荐
- Mysql-innoDB存储引擎(事物,锁,MVCC)
innoDB的特性: 从图中由上至下红色框中的信息是:基于主键的聚集索引 ,数据缓存,外键支持(逻辑上建立外键),行级别锁,MVCC多版本控制,事务支持.这些也是InnoDB最重要的特性. 事务: 数 ...
- vs2017 winform打包
如果没有Visual Studio Installer 说明没有安装打包插件 安装打包插件:Microsoft Visual Studio 2017 Installer Projects 工具 --& ...
- el内部支持运算表达式,外部不支持
el内部支持运算表达式 如"${pageBean.currentPage==1}" "${pageBean.currentPage+1}"........ 外部 ...
- ubantu中执行docker免sudo方法
1.添加用户组,如果已存在则不用设置. sudo groupadd docker 2.将用户加入该 group (docker)内 sudo gpasswd -a ${USER} docker 3.重 ...
- eclipse 中 导入git项目无法导入的问题
研发在git上打了一个分支,需要重新导入分支项目.此时发现与之前相同模式导入失败,不起作用. 解决: 需要在Git Repositories中对应项目下找到.project 文件并进行修改,修改项目名 ...
- 潭州课堂25班:Ph201805201 tornado 项目 第十二课 项目部署(课堂笔记)
运行多个Tornado实例 网页响应不是特别的计算密集型处理 多个实例充分利用 CPU 多端口怎么处理 Linux 常见应用服务配置模式 nginx 和 supervisord:采用主配置文件 + 项 ...
- 移动端click事件清除
http://blog.csdn.net/zfy865628361/article/details/49512095
- Luogu 45887 全村最好的嘤嘤刀(线段树 树状数组)
https://www.luogu.org/problemnew/show/T45887 题目背景 重阳节到了,我们最好的八重樱拥有全村最好的嘤嘤刀…… 题目描述 在绯玉丸力量的影响下,八重村成了一条 ...
- centos中安装基础环境
进入到相关目录cd /usr/bin安装python3yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-dev ...
- h5 canvas与SVG的比较
画布 什么是canvas? HTML5的canvas标签使用JavaScript可以在网页上绘制图像,画布为一个矩形. 画布本身没有绘制能力,只能通过脚本来绘制. 画布例子: <canvas i ...