Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging WSO2 EI 6.1.1-在相关日志文件中找不到位于调用中介器之后的每个API调试级别日志语句_Logging_Wso2_Log4j_Wso2esb_Wso2ei - Fatal编程技术网

Logging WSO2 EI 6.1.1-在相关日志文件中找不到位于调用中介器之后的每个API调试级别日志语句

Logging WSO2 EI 6.1.1-在相关日志文件中找不到位于调用中介器之后的每个API调试级别日志语句,logging,wso2,log4j,wso2esb,wso2ei,Logging,Wso2,Log4j,Wso2esb,Wso2ei,我需要记录特定API的调试级别。 我对示例API使用单独的日志文件:。我已根据API log4j属性使用此要求(参考:)。 问题:文件中找不到放置在调用中介程序之后的调试级别日志 我的API:test.xml <?xml version="1.0" encoding="UTF-8"?><api context="/test001" name="test" xmlns="http://ws.apache.org/ns/synapse"> <resource metho

我需要记录特定API的调试级别。 我对示例API使用单独的日志文件:。我已根据API log4j属性使用此要求(参考:)。 问题:文件中找不到放置在调用中介程序之后的调试级别日志

我的API:test.xml

<?xml version="1.0" encoding="UTF-8"?><api context="/test001" name="test" xmlns="http://ws.apache.org/ns/synapse">
<resource methods="GET"><inSequence>
       <log category="DEBUG" level="custom">
            <property name="DEBUG category" value="DEBUG LOG BEFORE CALL MEDIATOR"/>
        </log>

        <call>
            <endpoint>
                <http method="get" uri-template="http://localhost:8280/sample001"/>
            </endpoint>
        </call>
        <log category="DEBUG" level="custom">
            <property name="DEBUG category" value="DEBUG LOG AFTER CALL MEDIATOR"/>
        </log>
        <log level="custom">
            <property name="INFO  category" value="INFO LOG AFTER CALL MEDIATOR"/>
        </log>
        <payloadFactory media-type="xml">
            <format>
                <test>SUCCESS</test>
            </format>
            <args/>
        </payloadFactory>
        <loopback description="loop backing to out-sequence"/>
    </inSequence>
    <outSequence>
        <log category="DEBUG" level="custom">
            <property name="DEBUG category" value=" DBUG OUT SEQUENCE"/>
        </log>
        <log level="custom">
            <property name="INFO category" value="INFO OUT SEUENCE"/>
        </log>
        <send/>
    </outSequence>
    <faultSequence>
        <log category="DEBUG" level="custom">
            <property name="log DEBUG" value=" DBUG FAULT SEQUENCE"/>
        </log>
        <log level="custom">
            <property name="log DEBUG" value="INFO FAULT SEUENCE"/>
        </log>
    </faultSequence></resource></api>
注意:log4j.properties文件中的其他属性未更改

commonApi.log:

2017-11-21 19:42:06,502 [-] [localhost-startStop-1]  INFO test Initializing API: test
2017-11-21 19:43:21,703 [-] [PassThroughMessageProcessor-1] DEBUG test DEBUG category = DEBUG LOG BEFORE CALL MEDIATOR
2017-11-21 19:43:22,021 [-] [PassThroughMessageProcessor-3] DEBUG test DEBUG category =  DBUG OUT SEQUENCE
2017-11-21 19:43:22,021 [-] [PassThroughMessageProcessor-3]  INFO test INFO category = INFO OUT SEUENCE
正如您在API代码中看到的,日志行:

DEBUG category = DEBUG LOG AFTER CALL MEDIATOR
INFO  category = INFO LOG AFTER CALL MEDIATOR
commonApi.log文件中缺少

wso2carbon.log:

TID: [-1234] [] [2017-11-21 19:43:21,703] DEBUG {API_LOGGER.test} -  DEBUG category = DEBUG LOG BEFORE CALL MEDIATOR {API_LOGGER.test}
TID: [-1234] [] [2017-11-21 19:43:21,711]  INFO {org.apache.synapse.core.axis2.TimeoutHandler} -  This engine will expire all callbacks after GLOBAL_TIMEOUT: 120 seconds, irrespective of the timeout action, after the specified or optional timeout {org.apache.synapse.core.axis2.TimeoutHandler}
TID: [-1234] [] [2017-11-21 19:43:22,004]  INFO {org.apache.synapse.mediators.builtin.LogMediator} -  To: /sample001, MessageID: urn:uuid:c7c63feb-9c3f-46f7-b3cb-9a9d0b4fb82e, Direction: request, Envelope: <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body/></soapenv:Envelope> {org.apache.synapse.mediators.builtin.LogMediator}
TID: [-1234] [] [2017-11-21 19:43:22,019]  INFO {org.apache.synapse.mediators.builtin.LogMediator} -  INFO  category = INFO LOG AFTER CALL MEDIATOR {org.apache.synapse.mediators.builtin.LogMediator}
TID: [-1234] [] [2017-11-21 19:43:22,021] DEBUG {API_LOGGER.test} -  DEBUG category =  DBUG OUT SEQUENCE {API_LOGGER.test}
TID: [-1234] [] [2017-11-21 19:43:22,021]  INFO {org.apache.synapse.mediators.builtin.LogMediator} -  INFO category = INFO OUT SEUENCE {org.apache.synapse.mediators.builtin.LogMediator}
TID: [-1234] [] [2017-11-21 19:43:22,021]  INFO {API_LOGGER.test} -  INFO category = INFO OUT SEUENCE {API_LOGGER.test}
在wso2carbon.log文件中(这确保了调用中介后的执行)

注意: 但是,我可以保证以下几点:

  • 调用中介正在执行后写入的中介流。(我可以在控制台中看到信息日志。)
  • 调用中介已成功响应值

  • 如果API中没有调用中介,所有调试日志行都位于commonApi.log文件中。(按预期工作)

  • 无序调试日志以任何方式存在于文件中。(按预期工作)

提前谢谢

是否确实需要在非阻塞模式下使用调用中介(默认情况下,调用中介为非阻塞)?如果您将模式更改为如下所示的阻塞,则代码可以工作

<call blocking="true">

或者您可以使用默认为阻塞的
中介来获得相同的结果


由于信息日志正常工作,我认为这可能是WSO2 IE6中的一个错误。

如果调用中介期间出现错误,则消息将传递到错误序列。正如我在问题中提到的,调用中介成功地用值响应。!你的评论与这个问题无关。
<call blocking="true">