我有多个耳朵,对于某些耳朵,我希望从Weblogic级别中选择log4j详细信息,对于某些应用程序,我将应用程序级别log4j.xml与ear捆绑在一起。
startWebLogic.sh -Dlog4j.Configuration = Mylog4j.xml
并在Server Classpath中添加“Mylog4j.xml” as:
SAVE_JAVA_OPTIONS="${JAVA_OPTIONS}" -Dlog4j.Configuration=Mylog4j.xml
SAVE_CLASSPATH="${CLASSPATH}:/apps/myfiles/MyLog4j.xml"
对于具有应用程序级log4j.xml的应用程序,我在weblogic-application.xml中提到了prefer-application-packages
<prefer-application-packages>
<package-name>org.apache.log4j.*</package-name>
</prefer-application-packages>
但是没有为那些有log4j.xml的应用程序生成日志
另外,仅供参考:应用程序正在使用slf4j / commons-logging和log4j
请建议!!!
答案 0 :(得分:1)
问题与类加载有关:weblogic-applicaton.xml中的下一行就可以了。
<prefer-application-packages>
<package-name>org.apache.log4j.*</package-name>
<package-name>org.apache.*</package-name>
<package-name>org.slf4j.*</package-name>
</prefer-application-packages>
答案 1 :(得分:0)
按照以下步骤操作 1)在服务器lib文件夹中复制log4j.jar和wllog4j.jar 2)将log4j.xml复制到服务器域文件夹中 3)将setDomaninEnv.xml更改为指向log4j.xml文件,例如:LOG4J_CONFIG_FILE =“$ {DOMAIN_HOME} /log4j.xml”