我们正在自动化AEM配置,我们需要创建自定义日志文件。当前手动步骤是 登录AEM Felix控制台 - >吊带 - >日志支持 - >添加新的记录器 更新的参数是日志级别,日志文件和记录器。
有没有办法自动创建日志?请分享您的意见。
提前致谢,
答案 0 :(得分:0)
您可以通过配置OSGI内容节点或创建OSGI配置文件来完成此操作。例如,我在这个位置创建了一个OSGI配置节点:
/apps/cq/config.publish/org.apache.sling.commons.log.LogManager.factory.config-util.xml
该文件包含以下内容:
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0"
jcr:primaryType="sling:OsgiConfig"
org.apache.sling.commons.log.file="logs/util.log"
org.apache.sling.commons.log.level="debug"
org.apache.sling.commons.log.names="[com.myorg.commons.util.MyUtil,com.myorg.commons.util.OtherUtil]"
org.apache.sling.commons.log.pattern="\{0,date,dd.MM.yyyy HH:mm:ss.SSS} *{4}* [{2}] {3} {5}"/>
同样,您也可以为
执行此操作/apps/cq/config.publish/org.apache.sling.commons.log.LogManager.factory.writer-util.xml
内容如
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0"
jcr:primaryType="sling:OsgiConfig"
org.apache.sling.commons.log.file="logs/util.log"
org.apache.sling.commons.log.file.buffered="{Boolean}false"
org.apache.sling.commons.log.file.number="5"
org.apache.sling.commons.log.file.size="20MB"/>
有关如何使这些文件特定于运行模式的详细信息,请参阅https://helpx.adobe.com/experience-manager/6-3/sites/deploying/using/configuring-osgi.html。
当您安装包含这些节点的软件包时,由于它们是jcr:primaryType
sling:OsgiConfig
,它们将在您的环境中自动获取和配置(每个运行模式匹配)。