在Java中那个开源日志怎么使用

作者&投稿:驷浦 (若有异议请与网页底部的电邮联系)
log4j的使用,即java该如何使用日志文件~

java使用日志文件log4j的方法:
1、 新建一个Java工程,导入Log4j包,pom文件中对应的配置代码如下:
log4j log4j 1.2.17
2、resources目录下创建log4j.properties文件
### 设置###log4j.rootLogger = debug,stdout,D,E### 输出信息到控制抬 ###log4j.appender.stdout = org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target = System.outlog4j.appender.stdout.layout = org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n### 输出DEBUG 级别以上的日志到=/home/duqi/logs/debug.log ###log4j.appender.D = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.D.File = /home/duqi/logs/debug.loglog4j.appender.D.Append = truelog4j.appender.D.Threshold = DEBUG log4j.appender.D.layout = org.apache.log4j.PatternLayoutlog4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n### 输出ERROR 级别以上的日志到=/home/admin/logs/error.log ###log4j.appender.E = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.E.File =/home/admin/logs/error.log log4j.appender.E.Append = truelog4j.appender.E.Threshold = ERROR log4j.appender.E.layout = org.apache.log4j.PatternLayoutlog4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
3、输出日志的例子如下
package com.javadu.log;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class Log4JTest { private static final Logger logger = LoggerFactory.getLogger(Log4JTest.class); public static void main(String[] args) { // 记录debug级别的信息 logger.debug("This is debug message."); // 记录info级别的信息 logger.info("This is info message."); // 记录error级别的信息 logger.error("This is error message."); }}
4、输出结果首先,控制台输入如下图所示:

然后,查看/Users/duqi/logs目录下的debug.log和error.log文件,内容分别如下,可以看出:

常用2种方式,具体你可以去自己写,建议,编程前期主要靠你自己琢磨,他人给你思路即可。
1.用简单的读写文件实现,写一个写文件的共用类,每次把日志写到文件里即可。
2.用开源免费的日志工具,如log4j。
祝你成功!!

网上有log4j是管理日志信息的。log4j由三个重要的组件构成:日志信息的优先级、日志信息的输出目的地、日志信息的输出格式。日志信息的优先级从高到低有Error、warn、info、debug,分别用来指定这条日志信息的重要程度:日志信息的输出目的地指定了日志将打印到控制台还是文件中,而输出格式则控制了日志信息的显示内容。
定义配置文件:log4j支持两种配置文件格式,一种是XML格式的文件,一种是Java特性文件(键=值)。下面介绍使用java特性文件作为配置文件的方法:
1、配置根Logger,其语法为:
log4j.rootLogger = [level],appenderName,appenderName,
其中,level是日志记录的优先级,分为off、fatal、error、warn、info、debug、all或者您定义的级别。log4j建议只使用四个级别,优先级从高到低分别是error、warn、info、debug。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定义了INFO级别,则应用程序中所有debug级别的日志信息将不被打印出来。appenderName就是指定日志信息输出到哪个地方。您可以同时指定多个输出目的地。
2、配置日志信息输出目的地Appender,其语法为:
log4j.appender.appenderName=fully.qualified.name.of.appender.class
log4j.appender.appenderName.options=value1
log4j.appender.appenderName.options=value2
log4j.appender.appenderName.options=value3
log4j.appender.appenderName.options=value4

log4j.appender.appenderName.options=valuen
其中,log4j提供的appender有以下几种:
org.apache.log4j.ConsoleAppender(控制台),
org.apache.log4j.FileAppender(文件),
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件),
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件),
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)。

3、配置日志信息的格式(布局),其语法为:
log4j.appender.appenderName.layout=fully.qualified.name.of.layout.class

log4j.appender.appenderName.layout.option1=value1
log4j.appender.appenderName.layout.option1=value2
log4j.appender.appenderName.layout.option1=value3
log4j.appender.appenderName.layout.option1=valuen

其中,log4j提供的layout有以下几种:
org.apache.log4j.HTMLLayout(以HTML表格形式布局),
org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

log4j采用类似c语言中的printf函数的打印格式化日志信息,打印参数如下:
%m 输出代码中指定的消息
%p 输出优先级,即debug、info、warn、error、fatal
%r 输出自应用启动到输出该log信息耗费的毫秒数
%c 输出所属的类目,通常就是所在类的全名
%t 输出产生该日志事件的线程名
%n 输出一个回车换行符,windows平台为“\r\n”,Unix平台为"\n"
%d 输出日志事件点的日期或时间。默认格式为ISO8601,也可以再其后指定格式,比如:%d{yyyy MM dd hh:mm:ss,SSS},输出类似:2012年6月19日 21:46:28,987
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。

使用日志记录工具log4j
步骤:
1.在项目中添加log4j的jar包:
项目名右键->Properties(属性)
->选择java build path->选择libraries
->选择Add external Jars
->选择log4j.jar包确定完成
2.创建log4j.properties文件
log4j.properties必须放到src目录下,文件名必须是log4j。
3.编写log4j.properties文件
4.在程序中使用log4j记录日志信息

首先为你的项目添加log4j的jar包。
在你的项目的src下创建一个文件,名为log4j.properties;文件里不要有中文,如果有的话需要用native2asiic转换成Unicode码。文件内容是:

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=%d{yyyy-MM-dd HH:mm:ss} %m%n

log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=accp.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %l %m%n

log4j.rootLogger=info, stdout, file

做一个测试类:
package test;

import org.apache.log4j.Logger;

public class TeacherTest {

/**
* @param args
*/
public static void main(String[] args) {
//创建日志对象
Logger log=Logger.getLogger("TeacherTest");
Teacher teacher = new Teacher();
try {
log.debug("程序开始,记录日志");
teacher.setId("088");
} catch (Exception e) {
// TODO Auto-generated catch block
log.error("长度必须是7位数字");
//e.printStackTrace();
}
log.info("日志记录结束");
//System.out.println("程序结束!");

}

}


阿里P8都推崇不已的Java4大开源框架,面试大厂必须具备!
在Java开发中,开源框架的应用无处不在,如Spring的高效管理、Netty的网络编程简化、Spring Cloud的微服务支持,这些框架能让我们用几行代码实现复杂功能,大大提升工作效率。然而,仅仅依赖框架而不深入理解其内部机制是危险的,因为这可能导致技术局限。理解如MyBatis的数据库操作封装、Dubbo的服务发现机制、...

有什么 Java 开源库分享?
以下是一些Java开源库的分享:- biezhi\/blade:一款轻量级、高性能、简洁优雅的MVC框架。- github.com\/qiujuer\/elastic-job-lite-spring-boot:一个轻量级分布式任务调度平台,基于Spring Boot和Elasticsearch实现。- github.com\/apache\/shardingsphere:一个开源的分布式数据库中间件解决方案,支持分片、读写...

有哪些优秀的Java开源项目最值得阅读?
让我们一起在这些开源项目中寻找创新灵感和提升自己的机会:Flink: 以内存速度进行有状态计算,适应各种集群环境。 Sentinel: 轻量级流量控制,确保服务的可靠性和监控。 Dubbo: 高性能Java RPC框架,简化服务间通信。 Spring-cloud-kubernetes: Spring Cloud与Kubernetes的无缝集成,扩展部署能力。

这十个开源java库,还有谁没码住~
Jackson是高效处理JSON数据库,提供序列化和反序列化功能。Kafka是一个分布式流处理平台,广泛用于实时数据管道和流应用,提升数据处理能力。Mockito是一个流行的模拟测试框架,帮助开发者创建和测试模拟对象,提高测试效率。SLF4J结合Logback提供强大日志功能,SLF4J作为日志门面,简化日志实现。这十个开源Java库...

java程序员们常用的开源报表工具
首先,Jasperreport作为老牌开源工具,免费且在Java环境中易于使用,有可视化界面和多种格式支持。然而,其英文系统语言和复杂报表设计的编程需求限制了它的便捷性。BIRT的优势在于中文界面和基础报表制作的便利,但对复杂报表处理和填报功能的支持不足。Pentaho以操作便捷性见长,支持数据快速设置和多维度展示,...

java的开源工具有哪些
由于Ganttproject是一款纯Java应用程序,因此它可以运行于 Windows、Linux和Mac OS等多个平台上。2 DotProject 2.0.4:项目管理工具 网址:http:\/\/ www.dotproject.net dotProject是一个基于LAMP的开源项目管理软件。开发语言为PHP,数据库默认推荐使用MySQL(基本上可以理解为只能用Mysql)。项目管理工具,...

java开源框架有哪些?
利用 Hibernate 缓存来将 Java 环境中的数据持久化到数据库是一个持久化的概念、4. JSF 作为java EE的一部分,JavaServer Faces被Oracle所支持。虽然这不是一个可以进行快速java开发的最好框架,但它很容易使用,因为Oracle提供了大量文档。此外,除非你离开java EE环境,JSF不需要任何的外部依赖,而功能...

java开源框架有哪些?
前台框架:jQuery Mvc框架:Struts、spring Mvc 核心框架:Spring orm框架:Hibernate、Spring JDBC、myBatis。java优点:java是纯面向对象编程的语言;平台无关性 (一次编译,到处运行;Write Once,Run Anywhere);java提供了许多内置的类库,通过这些类库,简化了开发人员的设计工作,同时缩短了项目开发时间...

java有什么常用开源的框架?说得越多越好
1.Spring Framework 【Java开源JEE框架】Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用...

javaweb开发框架有哪些(javaweb有什么框架)
Struts把Servlet、JSP、自定义标签和信息资源(messageresources)整合到一个统一的框架中\\x0d\\x0a\\x0d\\x0a4.Hibernate【Java开源持久层框架】\\x0d\\x0a\\x0d\\x0aHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。

普安县17716298244: 如何在JAVA中使用日志文件 -
翁雷巨泰: import java.util.logging.*;public class LoggingExample1 {public static void main(String args[]){try{LogManager lm = LogManager.getLogManager();Logger logger;FileHandler fh = new FileHandler("log_test.txt"); logger = Logger....

普安县17716298244: java.util.logging.logger;怎么使用 -
翁雷巨泰: 一、创建Logger对象 static Logger getLogger(String name)为指定子系统查找或创建一个 logger. static Logger getLogger(String name, String resourceBundleName)为指定子系统查找或创建一个 logger. 注意:name是Logger的名称,当名...

普安县17716298244: log4j.jar怎么使用 -
翁雷巨泰: 是一个JAVA项目开发中使用的一种日志的插件的jar文件,放到项目中的lib目录下就可以在项目中使用了~再在src目录下写一个配置文件,就可以在项目中使用日志了

普安县17716298244: 如何使用java.util.logging中的Logger来记录日志 -
翁雷巨泰: g = Logger.getLogger("LoggerNewConfig"); //log.setLevel(Level.SEVERE);//设置级别 低于设置级别的消息将被屏蔽 //log.setLevel(Level.OFF);//关闭日志 FileHandler fileHandler = null; try {

普安县17716298244: 如何把java程序运行结果发送到邮箱 -
翁雷巨泰: 可以选择使用log4j,它是一款开源的日志记录工具,提供发送日志邮件功能Log4j发送日志邮件的作用: 项目错误信息能及时(实时)反映给项目维护人员以及相关负责人. 优点: ...

普安县17716298244: java中logger.error写入日志文件怎么用 -
翁雷巨泰: 日志不是在你编程时使用的,通常程序员都认为自己编程的思路正确,程序功能没有问题,但经常会在系统上线后出现莫名其妙的错误,如果日志记录完善,就有助于找到问题所在.

普安县17716298244: java怎么写日志记录,最好是完整的代码!谢啦! -
翁雷巨泰: 常用2种方式,具体你可以去自己写,建议,编程前期主要靠你自己琢磨,他人给你思路即可.1.用简单的读写文件实现,写一个写文件的共用类,每次把日志写到文件里即可.2.用开源免费的日志工具,如log4j. 祝你成功!!

普安县17716298244: java打印日志的几种方式 -
翁雷巨泰: 在Java 中实现记录日志的方式有很多种, 下面给你简单介绍四种:1. 最简单的方式,就是system.println.out(error) ,这样直接在控制台打印消息了.2. Java.util.logging ; 在JDK 1.4 版本之后,提供了日志的API ,可以往文件中写日志了. 3. log4j , 最强大的记录日志的方式. 可以通过配置 .properties 或是 .xml 的文件, 配置日志的目的地,格式等等. 4. commons-logging, 最综合和常见的日志记录方式, 经常是和log4j 结合起来使用.

普安县17716298244: java 中 log4j 的概念、作用以及如何使用 -
翁雷巨泰: Log4j实在是很熟悉,几乎所有的Java项目都用它啊.但是我确一直没有 搞明白.终于有一天我受不了了,定下心去看了一把文档,才两个小时,我终于搞明白了.一般情况下Log4j总是和Apache Commons-logging一起用的,我也就一起介绍吧...

普安县17716298244: java的Thread中setPriority怎样使用 -
翁雷巨泰: 查看方法:一、在 Java 与 C 语言中输出日志:1) Java 代码在程序中输出日志, 使用 android.util.Log 类的以下 5 个方法:Log.v()、Log.d()、Log.i()、Log.w()、Log.e().分对应 Verbose、Debug、INFO、Warn、Error 的首字母.例如:Log.i( ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网