在Tibco BW / Designer中更改Log4J配置没有达到预期效果

时间:2017-02-22 08:19:54

标签: log4j tibco tibco-business-works tibco-designer

我尝试在Tibco BW / Designer中设置自定义Log4J appender。

我在<tibco_folder>/bw/5.11/lib/log4j.xml添加了以下appender:

<appender name="TestFile" class="org.apache.log4j.FileAppender">
    <param name="file" value="d:/temp/tibco-test.log"/>
    <param name="Threshold" value="DEBUG"/>
    <param name="append" value="true"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy MMM dd HH:mm:ss:SSS 'GMT'} %X{offset} %X{engine} %X{role} [%X{msgCategory}] %X{msgcode} %m %n"/>
    </layout>
</appender>

然后我将<appender-ref ref="TestFile"/>添加到bw.logger旁边的每个记录器中,包括tibco_bw_log appender。消息将发送到tibco_bw_log,但不会发送给我的appender。

我的appender只获取了下面的一些日志,这些日志不会出现在tibco_bw_log appender(c:\Users\<me>\.TIBCO\logs\<app_name>.log

2017 Feb 21 17:05:16:693 GMT    []  no system property set, defaulting to entrust61 since got class com.entrust.toolkit.security.provider.Initializer 
2017 Feb 21 17:05:16:698 GMT    []  getVendor()=entrust61 
2017 Feb 21 17:05:16:719 GMT    []  Initializing Entrust crypto provider in NON FIPS 140-2 mode; insert provider as normal 
2017 Feb 21 17:05:17:302 GMT    []  using X9_31usingDESede 
2017 Feb 21 17:05:18:021 GMT    []  getVendor()=entrust61 
2017 Feb 21 17:05:18:023 GMT    []  Initialized crypto vendor entrust61 
java.lang.Exception: FOR TRACING ONLY -- NOT AN ERROR
at com.tibco.security.impl.new.F.init(CryptoVendor.java:69)
...

即使我从tibco_bw_log删除了bw.logger appender,日志仍会在那里,而不是我的记录器。我将我的appender名称更改为tibco_bw_log并删除了原始的appender,但后来我收到了错误:&#34; org.apache.log4j.FileAppender无法转换为com.tibco.share.util.BWLogFileAppender&# 34 ;.

现在我甚至没有得到那个错误,但我的appender没有得到任何记录。

每次我更改log4j.xml文件时,我都会重新启动Designer。我还对log4j.properties应用了相同的更改,甚至删除了它。似乎log4j.xml无论如何都优先考虑。

我还尝试在log4j.xml中为bwengine.xml指定bw.log4j.configuration的完整路径,并添加以下两个属性(如here所示) - 无效。

<property>
       <name>bw.engine.showInput</name>
       <option>bw.log4j.configuration</option>
       <default>true</default>
       <description>Log4j Configuration file path</description>
</property>
<property>
       <name>bw.engine.showOutput</name>
       <option>bw.log4j.configuration</option>
       <default>true</default>
       <description>Log4j Configuration file path</description>
</property>

我正在使用BW 5.11和Designer 5.8。

我错过了什么?

1 个答案:

答案 0 :(得分:0)

不幸的是,这在Tibco中是不可能的。只有Java活动可以与自定义记录器一起使用。