log4j配置

log4j升级到log4j2

旧街凉风 提交于 2020-02-25 20:49:14
log4j升级到log4j2 1、导入依赖 log4j2应尽量使用同一版本,否则可能出现不兼容的情况 <!-- log4j2 start --> <!-- log4j-1.2-api必须放在最前面,否则出错 --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-1.2-api</artifactId> <version>2.9.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-web</artifactId> <version>2.9.1</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core --> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.9.1</version> </dependency> <!-- https:/

log4j2 日志框架小记

独自空忆成欢 提交于 2020-02-24 21:13:40
这两天开始学习日志框架了, 把常用的学习一下,记录一下。上篇日志写了log4j----- https://www.cnblogs.com/qiaoyutao/p/10995895.html 今天就总结一下log4j2。 错误之处,烦清不吝批评指正。 版权所有,转载注明出处 先来说一下log4j2的特点,根据官方说法,有以下特征。  1. API分离   可以与Log4j实现一起使用,但也可以在其他日志实现(如Logback)之前使用, Log4j2 API与SLF4J相比有几个优点:1。Log4j2 API支持记录 消息 而不只是字符串。 2. Log4j2 API支持lambda表达式。 3. Log4j2 API提供了比SLF4J更多的日志记录方法。 4.除了SLF4J支持的“参数化日志记录”格式之外,Log4j2 API还支持使用java.text.MessageFormat语法以及printf-sytle消息的事件。 5. Log4j2 API提供了LogManager.shutdown()方法。 底层日志记录实现必须实现Terminable接口才能使方法生效。 2. 性能    Log4j 2包含基于LMAX Disruptor库的下一代异步记录器。 在多线程场景中,异步记录器的吞吐量比Log4j 1.x和Logback高18倍,延迟低,Log4j 2明显优于Log4j

Zookeeper修改运行日志zookeeper.out输出路径

99封情书 提交于 2020-02-20 10:18:47
前言 Zookeeper中运行日志 zookeeper.out 文件的输出路径默认为启动脚本的当前路径,导致Zookeeper集群启动失败时总是不记得输出日志在哪儿,不便于查找错误原因,因此很有必要设置固定路径来保存运行日志 在本次实验之前已经将 dataDir 和 dataLogDir 分别设置为 $ZOOKEEPER_HOME/zkData 和 $ZOOKEEPER_HOME/logs/transaction ,都是在 $ZOOKEEPER_HOME/conf/zoo.cfg 中配置。值得注意的是在此 zoo.cfg 文件中配置必须使用 绝对路径 ,不能使用环境变量 $ZOOKEEPER_HOME ,此处是为了描述方便才使用此变量名 本次实验将把运行日志文件 zookeeper.out 输出路径指定为 $ZOOKEEPER_HOME/logs/runtime/ 路径下 简单配置 修改 $ZOOKEEPER_HOME/bin/zkEnv.sh 将 ZOO_LOG_DIR 设置成自定义路径,本次设置为 $ZOOBINDIR/../logs/runtime ,其中 ZOOBINDIR 变量是此脚本开头获取的Zookeeper的bin路径,我们直接以此来定位自己的日志路径即可。具体如下: # 修改前 54 if [ "x ${ZOO_LOG_DIR} " = "x" ] 55 then

Log4j2日志记录框架的使用教程与简单实例

自作多情 提交于 2020-02-15 08:07:49
1、Log4j2的使用教程 1.1 简介 Log4j的1.x版本虽然已经被广泛使用于很多应用程序中,但由于出现内存泄漏等bug,代码难以维护,以及需要使用老版本的jdk等劣势,在2015年8月已经玩完。它的替代品,SLF4J,Logback,Log4j2对日志框架做了很多必要的改进。 历史上出现了很多的日记框架,如: Log4j: Apache Log4j是一个基于Java的日志记录工具。它是由Ceki Gülcü首创的,现在则是Apache软件基金会的一个项目。 Log4j是几种Java日志框架之一。 Log4j2: Apache Log4j 2是apache开发的一款Log4j的升级产品。 Commons Logging: Apache基金会所属的项目,是一套Java日志接口,之前叫Jakarta Commons Logging,后更名为Commons Logging。 Slf4j: 类似于Commons Logging,是一套简易Java日志门面,本身并无日志的实现。(Simple Logging Facade for Java,缩写Slf4j)。 Logback: 一套日志组件的实现(Slf4j阵营)。 Jul(Java Util Logging): 自Java1.4以来的官方日志实现。 1.2 安装 在开发中使用Log4j2日志记录框架需要引入的jar包如下: log4j

5.Mybatis日志

心已入冬 提交于 2020-02-12 01:59:39
一.日志 1.日志工厂 如果一个数据库操作出现异常,我们就需要日志工具进行排错。 Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具: SLF4J Log4j(掌握) Log4j 2 JDK logging Commons Logging STDOUT_LOGGING(掌握) NO_LOGGING 2.标准日志实现(STDOUT_LOGGING) mybatis-config.xml: 1 <settings> 2 <setting name="logImpl" value="STDOUT_LOGGING"/> 3 </settings> 效果: 3.Log4j (1)简介 Log4j是Apache的一个开源项目 通过使用Log4j,我们可以控制日志信息输送的目的地:控制台,文本,GUI组件.... 我们也可以控制每一条日志的输出格式; 通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。可以通过一个 配置文件来灵活地进行配置 ,而不需要修改应用的代码。 (2)导入log4j的jar包 (2.1)父项目的pom.xml: 1 <dependency> 2 <groupId>log4j</groupId> 3 <artifactId>log4j</artifactId> 4 <version>1.2.17</version> 5 <

log4j使用

不羁的心 提交于 2020-02-10 12:02:24
环境:spring boot +maven maven引用 <!--log4j日志--> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> src目录中创建log4j.properties ### 设置### 设置记录日志方式 下面配置每个记录方式的详细 log4j.rootLogger=INFO,stdout,database ### 输出信息到控制台### log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n #调试打开 log4j.logger.com.hibernate=DEBUG log4j.logger.com.hibernate.common.jdbc

SpringBoot之log4j

隐身守侯 提交于 2020-02-07 11:22:13
什么是log4j? ​ Log4j有三个主要的组件: Logger(记录器) , Appender (输出源) 和 Layouts(布局) 。可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。 Logger ​ Loggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,分别用来指定这条日志信息的重要程度。 其中重要的是name和additivity。 name :定义了logger的层级,如x.y 表示两层,x层和y层,x是y的父层级,x.y所在层级是y层级。additivity:默认为true,表示当前logger将打印日志到当前的appender及所有的父层级所指定的appender;false 为只打到当前自己的appender 日志记录器 添加的输出源 附加特性标识 输出目标 评论 root A1 not applicable A1 根日志记录器是匿名的,但是可以用Logger.getRootLogger()方法来存取。根日志记录器没有默认输出源。 x A-x1, A-x2 true A1, A-x1, A-x2 x和根的输出源 x.y

Log4j配置文件位置+Spring数据源配置文件位置

≯℡__Kan透↙ 提交于 2020-02-03 09:51:41
一个.Log4j配置文件位置 1.加载自己主动 当应用程序启动,缺省情况下,这将是src文件夹搜索log4j.xml型材。如果不存在。我们将继续寻找log4j.properties文件,仅仅要找到当中一个就会载入该配置文件内容。 2.手动载入 假设将log4j.properties(或log4j.xml)放到其他文件夹下,比方下图中的位置,应用程序就不能自己主动载入log4j的配置文件了,由于应用程序找不到该配置文件,你须要手动载入。 须要在应用程序启动的代码中增加例如以下的代码: //载入config目录下的log4j.properties String log4jPath=System.getProperty("user.dir")+"/config/log4j.properties"; PropertyConfigurator.configure(log4jPath); 二.Spring中数据源配置文件位置 1.普通情况 比較常见的Spring载入数据源配置文件的方式例如以下: <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value

log4j配置输出日志文件

…衆ロ難τιáo~ 提交于 2020-02-03 07:24:36
在测试程序时,有时候运行一次可能需要很久,把日志文件保存下来是很有必要的,本文给出了scala程序输出日志文件的方式,同时使用本人的另一篇博客中介绍的将log4j.properties放到程序jar包之外的方式,从而可以方便地修改日志显示的级别,日志文件路径等 链接: http://www.cnblogs.com/starwater/p/6703702.html 配置文件 首先是log4j.properties的配置 要实现的功能有 1、定义日志级别 2、输出日志到文件,并且控制日志文件大小 3、输出日志到控制台 # Define the root logger with appender file log = D:/logs #定义LOG输出级别、输出到控制台、文件 log4j.rootLogger = ERROR,STDOUT, FILE # 定义文件file appender 设置文件大小和个数 以及文件位置 log4j.appender.FILE=org.apache.log4j.RollingFileAppender log4j.appender.FILE.MaxFileSize=10MB log4j.appender.FILE.MaxBackupIndex=3 log4j.appender.FILE.File=${log}/testLog.log # 定义控制台

Java日志记录--log4j and logback

百般思念 提交于 2020-02-03 07:15:49
问题的引入: 把所有的信息打印在控制台上不行吗? 01. 控制台有行数限制; 02.System.out.println() 影响系统性能; 03. 如果我们需要对一些用户的行为习惯进行分析,我们找不到用户的数据! 程序中出现了问题怎么办? 01.debug 断点调试; ( 务必掌握 ) 02.System.out.println() 把信息打印在 console 控制台上(不会 debug ) 记录日志: 作用: 01. 记录代码中变量的变化情况,易于我们的代码调试和后期维护; 02. 周期性保存一些数据到文件中,以便于后续使用 ; 03. 可以设置日志信息的级别,便于管理。 组成部分: 01. 日志记录器 02. 日志的输出格式 03. 日志的输出目的地 七个输出级别: OFF 级别最高,用于关闭所有的日志记录 FATAL 严重的错误事件将会导致应用程序的退出 ERROR 错误事件,但仍然不影响系统的继续运行 WARN 会出现潜在错误的情形 INFO 消息在粗粒度级别上突出强调应用程序的运行过程 DEBUG 细粒度信息事件对调试应用程序非常有帮助 TRACE 细粒度比 DEBUG 更低的信息事件 ALL 级别最低,用于开启所有的日志记录 生产环境时,建议把 DEBUG 日志级别换成 WARN ,避免产生大量文件! 日志输出格式( Layout ) %p : 日志信息的优先级