WSO2 ESB如何查看异常日志

WSO2 ESB如何查看异常日志,wso2,wso2esb,Wso2,Wso2esb,我已经在WSO2 ESB中编写了一个代理。使用日志文件或监视器功能,我可以在inSequence sequence mediator中查看所有消息中介的日志,但找不到outSequence的日志。我的代理示例是: <proxy name="FlightStatusService" transports="https http" startOnLoad="true" trace="enable"> <des

我已经在WSO2 ESB中编写了一个代理。使用日志文件或监视器功能,我可以在inSequence sequence mediator中查看所有消息中介的日志,但找不到outSequence的日志。我的代理示例是:

 <proxy name="FlightStatusService"
          transports="https http"
          startOnLoad="true"
          trace="enable">
      <description/>
      <target>
         <inSequence>
            <property name="FORCE_SC_ACCEPTED" value="true" scope="axis2"/>
            <property name="OUT_ONLY" value="true"/>
            <property name="TIME_1"
                      expression="get-property('SYSTEM_TIME')"
                      scope="default"
                      type="LONG"/>
            <property xmlns:air="http://airline.services.esb.wso2.packt.com"
                      name="airlineInTransport"
                      expression="fn:concat('Airline Company - ', //air:updateStatus/air:airline)"
                      scope="transport"/>
            <property name="airlineInDefault"
                      expression="get-property('transport','airlineInTransport')"
                      scope="default"/>
            <switch xmlns:air="http://airline.services.esb.wso2.packt.com"
                    source="//air:updateStatus/air:airline">
               <case regex="EK">
                  <event topic="flightStatus/emirates"/>
               </case>
               <case regex="AA">
                  <event topic="flightStatus/aa"/>
               </case>
               <case regex="DL">
                  <event topic="flightStatus/delta"/>
               </case>
               <default>
                  <log level="custom">
                     <property name="noAirline" value="There is no Airline with these letters"/>
                  </log>
               </default>
            </switch>
         </inSequence>
         <outSequence>
            <property name="TIME_2"
                      expression="get-property('SYSTEM_TIME')"
                      scope="default"
                      type="LONG"/>
            <script language="js">var time1 = mc.getProperty("TIME_1");
var time2 = mc.getProperty("TIME_2");
var timeTaken = time2 - time1;
print("--------------  " + timeTaken + " ms  -----------------");
mc.setProperty("RESPONSE_TIME", timeTaken);</script>
            <log level="full" category="DEBUG">
               <property name="airlineInTransport"
                         expression="get-property('default', 'airlineInDefault')"/>
               <property name="Time Duration in ms: " expression="get-property('RESPONSE_TIME')"/>
            </log>
            <send/>
         </outSequence>
    </proxy>

var time1=mc.getProperty(“TIME_1”);
var time2=mc.getProperty(“TIME_2”);
var timetake=time2-time1;
打印(“--------------”+所用时间+”毫秒-----------------);
mc.setProperty(“响应时间”,耗时);

由于您的代理是对活动的支持,因此outSequence不会受到影响

已编辑->添加代理以供参考

请参考代理

<proxy name="FlightStatusService"
              transports="https http"
              startOnLoad="true"
              trace="enable">
          <description/>
          <target>
             <inSequence>
                <property name="TIME_1"
                          expression="get-property('SYSTEM_TIME')"
                          scope="default"
                          type="LONG"/>
                <property xmlns:air="http://airline.services.esb.wso2.packt.com"
                          name="airlineInTransport"
                          expression="fn:concat('Airline Company - ', //air:updateStatus/air:airline)"
                          scope="transport"/>
                <property name="airlineInDefault"
                          expression="get-property('transport','airlineInTransport')"
                          scope="default"/>
                <switch xmlns:air="http://airline.services.esb.wso2.packt.com"
                        source="//air:updateStatus/air:airline">
                   <case regex="EK">
                      <event topic="flightStatus/emirates"/>
                   </case>
                   <case regex="AA">
                      <event topic="flightStatus/aa"/>
                   </case>
                   <case regex="DL">
                      <event topic="flightStatus/delta"/>
                   </case>
                   <default>
                      <log level="custom">
                         <property name="noAirline" value="There is no Airline with these letters"/>
                      </log>
                   </default>
                </switch>
                <loopback/>
             </inSequence>
             <outSequence>
                <property name="TIME_2"
                          expression="get-property('SYSTEM_TIME')"
                          scope="default"
                          type="LONG"/>
                <script language="js">var time1 = mc.getProperty("TIME_1");
    var time2 = mc.getProperty("TIME_2");
    var timeTaken = time2 - time1;
    print("--------------  " + timeTaken + " ms  -----------------");
    mc.setProperty("RESPONSE_TIME", timeTaken);</script>
                <log level="full" category="DEBUG">
                   <property name="airlineInTransport"
                             expression="get-property('default', 'airlineInDefault')"/>
                   <property name="Time Duration in ms: " expression="get-property('RESPONSE_TIME')"/>
                </log>
                <send/>
             </outSequence>
        </proxy>

var time1=mc.getProperty(“TIME_1”);
var time2=mc.getProperty(“TIME_2”);
var timetake=time2-time1;
打印(“--------------”+所用时间+”毫秒-----------------);
mc.setProperty(“响应时间”,耗时);

非常感谢万吉。我开始使用一个示例,并对其进行了修改,以实现一个功能,而不必关心以前的配置。嗨,Vanji,我觉得现在赞美还为时过早:(虽然我删除了OUT_ONLY和FORCE_SC_ACCEPTED属性中介,但我看不到outsequence日志。还有其他提示或建议吗?嗨,Pymoo,中介的基本流程是客户端(发送请求)->序列->后端->(收到响应)Out Sequence。在您的情况下,您没有后端。因此,OutSquencen将不会参与。因此,请使用环回中介[1]参与OutSequence。WSO2 ESB 480以后的[1]支持此功能环回中介也不走运,我无法修复此示例以使输出序列正常工作,可能有任何问题。也许我应该尝试不同的方法。还有其他建议吗?感谢您的时间Vanji。嗨,Pymoo,请参考添加的代理!在默认使用情况下,它将命中输出序列