如何在 Adobe CQ5 项目中使用和配置 logback?
How to use and configure logback in Adobe CQ5 projects?
我是CQ5新手。我在 CQ 中开始了我的第一个项目,我想将项目组件、服务和 servlet(捆绑包)的任何异常和调试信息写入 crx-repo 中的日志文件(...\crx-quickstart\logs) .
我想在我的项目中使用带有 logback 实现的 slf4j。
我尝试了以下步骤:
在项目的pom.xml
中添加依赖
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.7</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.3</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.3</version>
</dependency>
添加 logback.xml 配置(记录器和附加器)到
项目的bundle资源包。
尝试在服务中实例化新的记录器(例如):
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
.....
@Component(metatype = true, label = "Some", description = "Sone service" ,
immediate = true)
@Service(SomeService.class)
public class SomeService {
private final Logger logger = LoggerFactory.getLogger(MyDao.class);
.....
logger.debug("debug");
logger.info("info");
logger.error("error");
......
}
这些步骤(这当然行不通)我举了一个例子,因为我不知道在 Adobe CQ5 中如何使用 logback。 有什么建议吗?如果有任何帮助,我将不胜感激!
CQ 使用其默认配置登录 crx-quickstart/logs/error.log
,底层 Apache Sling 框架提供了必要的桥梁,因此您只需要获取 slf4j Logger
并写入即可。
你的 SomeService
示例的 Java 代码在我看来是正确的,但在 pom 中你只需要 slf4j-api
依赖项,范围为 provided
,因为 API和实现包由CQ运行时提供。
您还可以查看像 Slingbucks 这样的 Sling 示例,如果安装在默认 CQ 实例上,它将记录到 error.log
。
我是CQ5新手。我在 CQ 中开始了我的第一个项目,我想将项目组件、服务和 servlet(捆绑包)的任何异常和调试信息写入 crx-repo 中的日志文件(...\crx-quickstart\logs) .
我想在我的项目中使用带有 logback 实现的 slf4j。
我尝试了以下步骤:
在项目的pom.xml
中添加依赖<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.7</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.1.3</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>1.1.3</version> </dependency>
添加 logback.xml 配置(记录器和附加器)到 项目的bundle资源包。
尝试在服务中实例化新的记录器(例如):
import org.slf4j.Logger; import org.slf4j.LoggerFactory; ..... @Component(metatype = true, label = "Some", description = "Sone service" , immediate = true) @Service(SomeService.class) public class SomeService { private final Logger logger = LoggerFactory.getLogger(MyDao.class); ..... logger.debug("debug"); logger.info("info"); logger.error("error"); ...... }
这些步骤(这当然行不通)我举了一个例子,因为我不知道在 Adobe CQ5 中如何使用 logback。 有什么建议吗?如果有任何帮助,我将不胜感激!
CQ 使用其默认配置登录 crx-quickstart/logs/error.log
,底层 Apache Sling 框架提供了必要的桥梁,因此您只需要获取 slf4j Logger
并写入即可。
你的 SomeService
示例的 Java 代码在我看来是正确的,但在 pom 中你只需要 slf4j-api
依赖项,范围为 provided
,因为 API和实现包由CQ运行时提供。
您还可以查看像 Slingbucks 这样的 Sling 示例,如果安装在默认 CQ 实例上,它将记录到 error.log
。