java自定义日志输出文件(log4j日志文件输出多个自定义日志文件)

以下是详细的java自定义日志输出文件(log4j日志文件输出多个自定义日志文件)的攻略:

1.安装log4j

我们在进行自定义日志输出文件之前,需要先安装一个java非常常用的日志库—log4j,安装的步骤如下:
1. 前往Apache Log4j官网(https://logging.apache.org/log4j/2.x/)下载最新版的log4j。
2. 解压之后,将里面的log4j-core.jar和log4j-api.jar添加到项目的classpath下(可以直接复制到项目的lib目录下)。
3. 如果使用maven构建项目,在项目的pom.xml文件中添加以下依赖:

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.14.0</version>
</dependency>

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.14.0</version>
</dependency>

2.使用log4j配置输出文件

在安装完log4j之后,我们需要进行输出文件的配置,直接上代码:

log4j.rootLogger=DEBUG, Console, File1, File2

log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.target=System.err
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# File1
log4j.appender.File1=org.apache.log4j.RollingFileAppender
log4j.appender.File1.File=/logs/app1.log
#控制每个日志文件的最大容量,超过就归档
log4j.appender.File1.MaxFileSize=10MB
#控制归档文件夹中最多保留的档案数量
log4j.appender.File1.MaxBackupIndex=10
log4j.appender.File1.layout=org.apache.log4j.PatternLayout
log4j.appender.File1.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# File2
log4j.appender.File2=org.apache.log4j.RollingFileAppender
log4j.appender.File2.File=/logs/app2.log
log4j.appender.File2.MaxFileSize=10MB
log4j.appender.File2.MaxBackupIndex=10
log4j.appender.File2.layout=org.apache.log4j.PatternLayout
log4j.appender.File2.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

上面这段配置文件中,共定义了3个日志输出地方,一个是控制台(Console),另外两个则是2个文件(File1,File2),输出到不同的文件中。

3.调用log4j日志库打日志

代码实例:

import org.apache.log4j.Logger;

public class LogTest {
    private static final Logger LOGGER_FILE1 = Logger.getLogger("File1");
    private static final Logger LOGGER_FILE2 = Logger.getLogger("File2");

    public static void main(String[] args) {
        LOGGER_FILE1.error("This is an error message from LOGGER_FILE1.");
        LOGGER_FILE2.info("This is an info message from LOGGER_FILE2.");
    }
}

代码中我们使用了两个logger分别输出到不同的文件中。

4.运行程序查看效果

如果一切都没有问题,我们就可以运行程序来检查日志输出操作是否成功了。此时,程序会在控制台输出错误日志,而将info消息写到日志文件中。

到这里,我们就完成了自定义java的日志输出文件操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java自定义日志输出文件(log4j日志文件输出多个自定义日志文件) - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • 解决VS2015中没有报表项(ReportViewer)的方法

    解决VS2015中没有报表项(ReportViewer)的方法 在VS2015中创建WinForm项目时,默认情况下是没有报表项(ReportViewer)的,那么该如何解决呢?下面提供两种解决方法。 方法一:通过VS2015安装程序安装报表项(ReportViewer) 打开VS2015安装程序,在“个性化”页面中选择“修改”。 在“工作负载”选项中,勾选…

    Java 2023年6月15日
    00
  • java如何调用Groovy脚本

    当Java想要调用Groovy脚本时,可以通过GroovyShell类的方法来完成。具体步骤如下: 步骤一:构建GroovyShell实例 在Java代码中,首先需要构建一个GroovyShell实例,该实例将被用来执行Groovy脚本。构建GroovyShell实例的方法有多种,下面是其中一种方法: import groovy.lang.Binding; …

    Java 2023年5月26日
    00
  • Java框架学习Struts2复选框实例代码

    下面是“Java框架学习Struts2复选框实例代码”的完整攻略: 一、Struts2框架简介 Struts2框架是一个基于MVC模式的Web应用程序框架。Struts2将请求的处理流程划分成控制器、模型、视图三部分,进行松散耦合的设计,以提高系统的拓展性和可维护性。同时Struts2也提供了丰富的标签库以及面向切面编程等特性。 二、复选框实例代码 接下来我…

    Java 2023年5月20日
    00
  • SpringBoot Service和Dao的编写详解

    针对 “SpringBoot Service 和 Dao 的编写详解” ,下面是完整的攻略: 1. 什么是 SpringBoot Service 和 Dao 在开发 Web 应用程序时,我们通常会遵循 MVC 的设计模式。其中 Service 和 Dao 层属于模型层的一部分,分别负责业务处理和数据访问。 SpringBoot Service 层主要负责业务…

    Java 2023年5月15日
    00
  • jQuery+json实现的简易Ajax调用实例

    下面就详细讲解一下“jQuery+JSON实现的简易Ajax调用实例”的完整攻略。 什么事Ajax? 在讲解“jQuery+JSON实现的简易Ajax调用实例”之前,先来介绍一下Ajax。 Ajax(Asynchronous JavaScript and XML)是一种用于创建快速动态网页的技术。它通过在后台与服务器进行少量数据交换,就可以实现页面无刷新更新…

    Java 2023年6月15日
    00
  • Java8新特性之Lambda表达式浅析

    Java8新特性之Lambda表达式浅析 Lambda表达式是Java8中最重要的新特性之一,它允许将函数作为参数传递,甚至可以创建其它的函数。Lambda表达式的简洁优雅,使得我们能够以更少的代码实现更为复杂的逻辑。本文将深入浅出地讲解Lambda表达式的使用方法及其内部实现细节。 Lambda表达式的基础语法 Lambda表达式使用一组参数和一个函数体组…

    Java 2023年5月26日
    00
  • java在运行时能修改工作目录吗

    Java程序在运行时可以修改工作目录,可通过以下方式实现: 使用Java的File类修改工作目录 Java提供了File类来操作文件与目录,通过File类提供的方法可以对现有的目录进行修改。 可以通过以下代码来修改工作目录: File dir = new File("D:\\Java_Project"); System.setProper…

    Java 2023年6月15日
    00
  • 利用Java代码实现区块链技术

    利用Java代码实现区块链技术的攻略 什么是区块链? 区块链是一种去中心化的分布式数据库技术,它以区块为基本单位,每个区块包含了一些交易数据和前一个区块的哈希值。 实现区块链的基本原理 实现区块链至少要考虑以下几个方面: 加密方法 区块结构 工作量证明 网络通信 加密方法 区块链技术中,加密方法包括了哈希算法和公钥加密算法。其中,哈希算法是对区块数据的摘要算…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部