Java序谈之Logger日志记录器

如何使用Log日志记录错误信息?

我们需要将一些错误信息打印到日志文件中,这时候系统不提供此类的JAR包,需要导入第三方JAR包,那就是Log4jJAR包

使用Log4jJAR包有什么好处?

1、有六种级别的打印方式

2、可以打印信息到不同的地方

3、可以有丰富的打印信息

如何导入JAR包?

可以右键项目,在buildpath中添加add libraries或者add JAR包,这里最好使用一个libraries

Log4j有哪两种版本,需要注意什么?

1、有log4j和log4j2这两个 1、2版本。

2、它们都需要有配置文件,1版本配置文件名为log4j.properties,这是一个txt文件,2版本配置文件名为log4j2.xml,这是一个xml文件,但是第二个版本在未配置的时候可以输出Error和fatal级别信息

3、在类中需要导入不同的JAR包

①import.org.apache.log4j.Logger

②import.org.apache.logging.log4j.Logger

4、两个版本建立对象的不同方式

①Logger log = Logger.getLogger()

②Logger log = LogManager.getLogger()

有哪六种级别的打印方式?

off > error > warn > info > debug > trace

log4j.properties的配置文件内容

log4j.rootLogger = INFO , out , out1
log4j.appender.out = org.apache.log4j.ConsoleAppender
log4j.appender.Target = System.err
log4j.appender.out.layout = org.apache.log4j.PatternLayout
log4j.appender.out.layout.ConversionLayout = [%d{yyyy-MM-dd HH-mm-ss-SSS}][%r][%l][%p][%t][%c][%m][%n]
log4j.appender.out.layout = org.apache.log4j.SimpleLayout
log4j.appender.out.layout = org.apache.log4j.TTCCLayout 
yyyy-MM-dd HH-mm-ss-SSS
log4j.appender.out.ImmidiateFlush =true
log4j.appender.out.Threshold = error

log4j2.xml的配置文件内容

<Configure status = "error" minitorInterval = "1000">
<properties name = "LOG_HOME">log</properties>
<Appenders>
<Console name ="Console" Target = "System_err">
<PatternLayout pattern = "[%d{yyyy-MM-dd HH:mm:ss:SSS}][%-5level][%t][%c][%r][%l] %msg %n">
</Console>
<File name ="File" filename ="${LOG_HOME}/log4j.log">
<PatternLayout pattern = "[%d{yyyy-MM-dd HH:mm:ss}][%-5level][%t][%c][%r][%l]%msg%n">
</File>
</Appenders>
<Loggers>
<Root level = "info"  >
<AppendersRef ref = "Console"></AppendersRef>
<AppendersRef ref = "File"></Appenders>
</Root>
</Loggers>
</Configure>

注意:在建立对象的时候,需要在参数列表中加入对应的AppenderRef,如果不写默认是打印到控制台



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
LoggerJava中的一个类,位于java.util.logging包中,用于记录应用程运行时的日志信息。Logger可以记录不同级别的日志信息,如FINE、INFO、WARNING、SEVERE等,可以将日志信息输出到控制台、文件、数据库等不同的目的地。Logger还可以通过设置过滤器、格式化器等来控制日志信息的输出格式和内容。下面是一个简单的Logger使用示例: ```java import java.util.logging.Logger; public class MyLogger { private static final Logger LOGGER = Logger.getLogger(MyLogger.class.getName()); public static void main(String[] args) { LOGGER.info("This is an information message."); LOGGER.warning("This is a warning message."); LOGGER.severe("This is a severe message."); } } ``` 上述代码中,我们首先通过Logger.getLogger()方法获取Logger实例,然后使用Logger的info()、warning()、severe()方法分别记录不同级别的日志信息。在默认情况下,这些日志信息会输出到控制台。如果需要将日志信息输出到文件中,可以通过设置Handler来实现。例如,下面的代码将日志信息输出到mylog.log文件中: ```java import java.util.logging.*; public class MyLogger { private static final Logger LOGGER = Logger.getLogger(MyLogger.class.getName()); public static void main(String[] args) throws Exception { FileHandler handler = new FileHandler("mylog.log"); handler.setFormatter(new SimpleFormatter()); LOGGER.addHandler(handler); LOGGER.info("This is an information message."); LOGGER.warning("This is a warning message."); LOGGER.severe("This is a severe message."); } } ``` 上述代码中,我们首先创建一个FileHandler实例,并设置输出文件名为mylog.log。然后,我们将该Handler添加到Logger实例中,这样Logger记录的日志信息就会输出到该文件中。注意,我们还设置了一个SimpleFormatter,用于控制日志信息的输出格式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值