# logger
**Repository Path**: truthbean/logger
## Basic Information
- **Project Name**: logger
- **Description**: logger adapter
- **Primary Language**: Unknown
- **License**: MulanPSL-2.0
- **Default Branch**: dev
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 2
- **Forks**: 0
- **Created**: 2020-02-17
- **Last Updated**: 2025-08-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# logger
logger adapter
项目回归~
## 日志级别
1. fatal
导致系统崩溃无法运行的错误
2. error
导致数据错误或者丢失,但是系统依然能运行
3. warn
能容忍但是必须被记录下来的错误
4. info
在正常情况下需要被记录的重要信息
5. debug
用于记录方便开发者排查错误及潜在隐患的信息
6. trace
用于跟踪数据的变化
## maven
```xml
com.truthbean.logger
logger-dependence
0.5.7-RELEASE
import
pom
com.truthbean.logger
truthbean-logger-core
0.5.7-RELEASE
com.truthbean.logger
logger-to-log4j2
0.5.7-RELEASE
或者使用
com.truthbean.logger
logger-to-slf4j
0.5.7-RELEASE
或者在测试的时候使用以下中的一个
com.truthbean.logger
jdk-adapter
0.5.7-RELEASE
com.truthbean.logger
logger-to-jul
0.5.7-RELEASE
com.truthbean.logger
logger-stdout
0.5.7-RELEASE
com.truthbean.logger
logger-kotlin
0.5.7-RELEASE
包含依赖的boot
com.truthbean.logger
log4j2-boot
0.5.7-RELEASE
com.truthbean.logger
slf4j-boot
0.5.7-RELEASE
com.truthbean.logger
juli-bridge
0.5.7-RELEASE
com.truthbean.logger
logger-spring-boot-starter
0.5.7-RELEASE
```
### log4j2的注意事项
如果使用spring-boot,首先应该排除springboot中自带的logback日志,引入log4j2的日志
```xml
org.springframework.boot
spring-boot-starter
org.springframework.boot
spring-boot-starter-logging
org.springframework.boot
spring-boot-starter-log4j2
```
其次在编写的过程中,尽量使用log4j2-api中的接口(log4j2-core是log4j2-api的官方实现,性能比logback、log4j、jul都要高很多),而不是其他门面日志系统(log4j2自身也是门面模式);
同时,日志的message尽量不能相同,不然很难排查问题,失去了日志的原有功能点。
```java
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
...
private static final Logger LOGGER = LogManager.getLogger(XXXX.class);
```
log4j2.xml配置文件中,不允许显示行号。使用%c或者%c{36}或者%logger或者%logger{36},注意是小写的c,大写的C将使用堆栈快照获取日志的位置信息
`官方文档显示的信息,显示日志调用的位置信息,同步logger将花费1.3到5倍的时间,异步logger将花费30到100倍的时间`
https://logging.apache.org/log4j/2.x/manual/layouts.html#LocationInformation
### 注意
JDK要求最低11