# Log4j `HTMLLayout` – 以 HTML 格式创建日志
> 原文: [https://howtodoinjava.com/log4j/how-to-create-logs-in-html-format-using-log4j/](https://howtodoinjava.com/log4j/how-to-create-logs-in-html-format-using-log4j/)
[Log4j](//howtodoinjava.com/category/frameworks/log4j/ "log4j tutorials") 是一个简单而灵活的日志记录框架。 日志记录为开发人员提供了有关应用故障的详细上下文。 使用 log4j 可以在运行时启用日志记录,而无需修改应用二进制文件。 log4j 包的设计目的是使这些语句可以保留在出厂代码中,而不会造成高昂的性能成本。
Log4j 带有多个选项来格式化框架创建的日志文件。 它也可以创建简单的日志文件,html 日志文件或 xml 日志文件。
在这篇文章中,我将展示用于配置 log4j 以生成 html 格式的日志的示例代码。
**步骤 1)创建一个 Maven Java 项目并更新 log4j 依赖项**
请遵循与[**使用 maven 配置 log4j**](//howtodoinjava.com/log4j/how-to-configure-log4j-using-maven/ "How to configure log4j using maven") 有关的步骤。
**步骤 2)在`log4j.properties`文件中配置`HTMLLayout`**
`HTMLLayout`类扩展了抽象的`org.apache.log4j.Layout`类,并从其基类覆盖`format()`方法以提供 HTML 样式的格式设置。
这提供了以下信息以供显示:
* 从应用启动到生成特定日志事件之前所经过的时间。
* 调用日志记录请求的线程的名称。
* 与此日志记录请求关联的级别。
* 记录器和记录消息的名称。
* 程序文件的可选位置信息以及从中调用此日志记录的行号。
```java
# Define the root logger with file appender
log4j.rootLogger = DEBUG, HTML
# Define the file appender
log4j.appender.HTML=org.apache.log4j.FileAppender
log4j.appender.HTML.File=application.html
# Define the html layout for file appender
log4j.appender.HTML.layout=org.apache.log4j.HTMLLayout
log4j.appender.HTML.layout.Title=Application logs
log4j.appender.HTML.layout.LocationInfo=true
log4j.appender.HTML.Threshold=DEBUG
```
**步骤 3)配置 log4j.properties 并测试应用**
```java
package com.howtodoinjava;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class Log4jHTMLLayoutExample
{
static Logger log = Logger.getLogger(Log4jHTMLLayoutExample.class);
public static void main(String[] args)
{
PropertyConfigurator.configure("log4j.properties");
log.debug("Sample debug message");
log.info("Sample info message");
log.error("Sample error message");
log.fatal("Sample fatal message");
}
}
```
输出将记录在项目根文件夹的`application.html`中:
包![HTML logs generated from log4j](img/1a824af36a968904b7db25ed9f211a75.png)
从 log4j 生成的 HTML 日志
让我知道是否有任何问题。
**祝您学习愉快!**