You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Error dumps are written, when the service throws an exception that is not caught. Each single error is dumped into a separate file. On tab Dump, the Bridge displays a list of all accumulated error dump files, latest first.
By setting flag Dump Context on Error in the preferences section of the xUML Service tab, you can define whether error dumps are written at all. See Preferences of an xUML Service for more information on how to set this flag.

If you are tracing the service synchronously or asynchronously with the Analyzer, no error dump files will be created. In this case, all tracing information will be picked up by the Analyzer (see Missing Tracing Information).

Click on a filename in the list to view the content.

The dump file shows the context of the error: e.g. error description and call stack, marked in the picture above. You can load the dump file into the Builder to do more investigation on the error.

To delete an error dump file, click the corresponding Delete button. The file will be deleted without any further confirmation.
To clean up all error dump files, click Delete all Files.

A confirmation dialog is displayed. The action needs to be confirmed or canceled.

To download an error dump file, click the corresponding Download button. Once downloaded, an error dump file can be imported into the E2E Analyzer for further analysis of the error.

Reading an xUML Service Dump

Setting the Bridge log level of an xUML service to Debug (see Preferences of an xUML Service), the full communication stream when using the URL or SOAP adapter is written to the bridgeserver log. This is especially helpful when debugging FTP problems. If the transferred data size exceeds 8192 bytes, the stream is cut. This would also be reported in the log.

Use Bridge log level Debug with care and only when investigating problems. As all information has to be logged, it may result in significant loss of performance with increasing complexity of the deployed xUML service.

The following description explains how to generate and interpret the trace dump.

The trace dump will only be generated, if no trace request is sent via the E2E Analyzer (trace level in the test case properties set to None) and if the xUML service is running with disabled Trace (see xUML service details on the xUML Service tab).
If an error occurred, the generated error file will be specified in the error message displayed in the xUML service log:

[2010-09-22 07:46:18 +0200][Error][Internal][FUASM][3][Division by zero - Error Trace: logs/error/error-2014-06-03_11-32-14_UTC-0.xml - Callstack: calculate > urn:Services.Calculation.Ports.CalculationPortType.calculate > Division > Division > Division(1)]

The error file is located in the directory of the xUML service (location: <your bridge data directory>\<name of the service>\logs\error). It contains the call stack and the corresponding XML trace of the activity diagram where the error occurred.

In the following example, a division by zero is executed. The error will occur in action node Division of activity diagram Division.

In the XML trace, object flow states do not have a name but only numbers.

<?xml version="1.0" encoding="utf-8"?>
<DebuggerMessage xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
    <Session>
        <TransactionID>00000005618d676b0000144c000019b8105bfc03</TransactionID>
        <SessionID>5</SessionID>
    </Session>
    <Exception>
        <category>Internal</category>
        <domain>FUASM</domain>
        <code>3</code>
        <description>Division by zero</description>
    </Exception>
    <Activity 
        name="Division..._145497611|_16_6_2_56aa07e1_1285058950975_758301_10717" 
        node="Divide..._145497611|_16_6_2_56aa07e1_1285059038644_247558_10789"
        statementIndex="1">
        <Context>
            <addend2 xsi:type="xsd:float">0</addend2>
            <sum xsi:type="xsd:float">10</sum>
        </Context>
    </Activity>
    <CallStack>
        <Call
            name="urn:Services.Calculation.Ports.CalculationPortType.calculate" 
            id="_145497611|IMPL_OF_OP_P_FE_urn:templateNS.NameOfPort1::TemplateRequest"/>
        <Call
            name="calling"
                id="calling..._145497611|_17_0_56aa07e1_1401794980541_538932_14267"/>
        <Call
            name="Division..._145497611|_16_6_2_56aa07e1_1285058950975_758301_10717" 
            id="_145497611|_16_6_2_56aa07e1_1285058950975_758301_10717"/>
        <Call
            name="Divide"
            id="Divide..._145497611|_16_6_2_56aa07e1_1285059038644_247558_10789" statementIndex="1"/>
    </CallStack>
</DebuggerMessage>







Transaction ID



Error Message





Activity with erroneous action
Action node, where error occurred

  • No labels