背景:
spark1.6以前的版本默认是log4j+slf4j的方案来做日志, 在我们实际开发项目的过程中大多数是使用logback+slf4j的方案来做日志。
配置方法:
1. logbak+slf4j 项目中 java类里面的代码的写法和 log4j+slf4j的 代码写法完全一模一样的
import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** *这个类提供了一些根据类的class文件位置来定位的方法。 * * @version 1.0 2011-4-27 上午12:40:08 * @since 1.0 */ public class ClassLoaderUtil{ private final static Logger log = LoggerFactory.getLogger(ClassLoaderUtil.class);
slf4j的切面日志功能功不可没,代码中可以忽略logback或者 log4j 的存在
2. 去掉 maven pom.xml 所有直接/间接的 log4j 依赖
比如
<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.11</artifactId> <version>${spark.version}</version> <!-- spark默认使用log4j,我们需要使用logback,所以将讲spark的log4j依赖进行移除--> <exclusions> <exclusion> <artifactId>slf4j-log4j12</artifactId> <groupId>org.slf4j</groupId> </exclusion> <exclusion> <artifactId>slf4j-api</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency>
3. 去掉 maven pom.xml 所有直接/间接的 slf4j-log4j12 依赖
如上面的 exclusion
4. 增加 logback 依赖
<!--******** logback and slf4j ******** --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>${version.logback}</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>${version.logback}</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-access</artifactId> <version>${version.logback}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${version.slf4j}</version> </dependency> <!--jul桥接 用来输出 Java Logging Framework (JUL) --> <dependency> <groupId>org.slf4j</groupId> <artifactId>jul-to-slf4j</artifactId> <version>${version.slf4j}</version> </dependency> <!-- jcl桥接,用来输出 第三方Jakarta Commons Logging (JCL) --> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>${version.slf4j}</version> </dependency>
相关推荐
在早期的Spark版本中,`org.apache.spark.Logging`接口被广泛用于日志记录,但在Spark 2.0中,这个接口已经被废弃,并被替换为更通用的日志框架SLF4J(Simple Logging Facade for Java)。 **Spark与Logging的变迁*...
在处理日志功能时,Java通常会利用内置的`java.util.logging`包或者第三方日志框架,如Log4j、Logback和SLF4J等。 增强Web服务器日志功能的关键在于定制化。这可能包括以下几个方面: 1. **自定义日志格式**:通过...
- `slf4j-api`:简单日志门面,可以与各种日志实现(如Logback、Log4j)配合使用。 - `reflectasm`:一个用于访问和修改Java反射的高效库,Kryo利用它来加速反射操作。 - `asm`:字节码操作库,反射ASM提供底层的...
- 日志框架如Log4j、Logback和SLF4J用于记录应用程序运行过程中的信息,便于调试和问题追踪。 8. 消息中间件: - Kafka和RabbitMQ是常用的消息队列,用于异步处理和解耦系统组件。 - HBase、MongoDB和Cassandra...
BSFrameWorkExam可能使用了Log4j、Logback或SLF4J等日志框架,记录应用程序的运行信息。 以上就是BSFrameWorkExam框架的核心知识点,它为开发者提供了一个完整的、易于扩展的Web开发基础,帮助快速构建功能丰富的BS...
在Java中,常见的日志框架有Log4j、Logback、Java Util Logging(JUL)和SLF4J(Simple Logging Facade for Java)。这些框架提供了灵活的日志级别,如DEBUG、INFO、WARN、ERROR和FATAL,帮助开发者根据需要选择不同...
Logback 是Log4j的一个替代品,提供了更好的性能。 - **SLF4J**: 框架。Simple Logging Facade for Java (SLF4J) 是一个用于多种日志框架的简单抽象层。 #### 单元测试 - **JUnit**: 工具。JUnit 是一个Java编程...
Java程序常被用于生成和处理日志,因为Java有强大的IO流支持和丰富的库,如Log4j、SLF4J和Logback,这些库可以帮助开发者轻松地记录和管理日志。 配合Flume,这是一个由Apache开发的数据收集系统,能够高效地从多个...
slf4j 框架实现 log4j logback commong logging jdk logger 测试框架 测试框架 junit easymock testng mockito bug管理 禅道 jira 开发工具 编程工具 eclipse myeclipse idea vi VS webstorm...
9. **日志记录**:Log4j、SLF4J和Logback是常见的日志记录库,它们提供了灵活的日志级别控制和输出格式定制。 10. **图形用户界面**:JavaFX和Swing是Java内置的GUI库,而JavaFX提供了更现代和丰富的UI组件。对于更...
- **日志框架**:SLF4J 使用 SPI 来加载不同的日志实现,如 Logback 或 Log4j。 - **Spring 类型转换**:Spring 使用 SPI 实现类型转换的扩展性,例如 Converter SPI 和 Formatter SPI。 ##### SPI 改造实践 为了...
日志框架如Log4j、Logback和SLF4J(Simple Logging Facade for Java)是非常常用的,它们提供了一种标准的方式来管理和控制应用程序的日志输出。 描述中的“logos-aj”没有提供额外的具体信息,但我们可以假设它...
日志系统如Log4j、SLF4J和Logback对于问题排查至关重要。分布式协调服务Zookeeper常用于服务发现和配置管理,而消息中间件如Kafka和RabbitMQ则提供了高吞吐量的消息传递能力。 数据库管理是数据持久化的关键,涵盖...
8. **日志管理**: 日志记录对于调试和问题追踪至关重要,项目可能使用Log4j、SLF4J或Logback等日志框架。 9. **Docker化部署**: 为了便于部署和扩展,项目可能已经实现了Docker化,通过Dockerfile定义容器环境,...
他们可能利用Java的开源库,如Log4j、SLF4J或Logback,来实现日志记录和管理功能。 结合【压缩包子文件的文件名称列表】"LogTeam-master",这通常是一个开源项目的主分支或者源代码仓库。"master"分支通常代表项目...
这通常涉及到日志适配器的设计,支持不同的日志框架如Log4j、SLF4J、Logback等。 2. **日志格式化**:为了方便日志的阅读和分析,RechoBase可能会包含日志格式化策略,支持自定义日志输出格式,如JSON、CSV等,以...
Log4j、SLF4J和Logback是常用的Java日志框架,它们帮助开发者追踪系统运行状态,定位和解决问题。 综上所述,"dsdeliver-sds1"项目涵盖了Java编程、并发处理、网络编程、数据库交互、分布式服务和数据处理等多个...
Java应用可以通过JMX(Java Management Extensions)提供监控接口,而日志框架如Log4j、SLF4J和Logback可以帮助收集和分析运行时信息。 9. **异常处理和容错**: 在批处理中,错误处理和恢复机制是必不可少的。...
9. **错误处理与日志记录**:Java的Exception处理机制和日志框架(如Log4j、SLF4J和Logback)用于捕获和记录系统运行时的异常信息,便于问题排查。 10. **安全设计**:Java提供了一系列的安全框架和API,如Spring ...