Debug


In Warewolf Easy Service Bus (ESB) debugging refers to executing a service from the Studio in Debug mode (press F6 or F5 and click the Debug button). When a service is executed in this way the Server emits debug information which shows the input and output of each activity that is executed in the service, this information is then displayed by the Studio which allows tracing of how data moved through each activity. This helps to identify issues when the output of a service is not what is expected as well as facilitate during the design phase to show what an activity would do under various inputs.

Generation and Dispatch

The information used to generate the debug happens during the execution of the activity in the ServerDataListCompiler. During execution of an activity a DebugTO is created, the object holds LeftEntry and RightEntry which represents the input and output for the activity. The LeftEntry and RightEntry have a ComplexExpressionAuditor which tracks each change to the entry as the activity executed. This data is then passed back to the activity which then formats the information based on the specifics of the activity i.e. Inputs, Outputs, Options, etc. into a DebugState. The DebugState is then dispatched to the Studio via DebugDispatcher which uses EsbHub to send it to the Studio for display.

Receiving and Display

DebugState is then received by the ServerProxy. The DebugOutputViewModel then uses the DebugState to display the debug information in the DebugOutputView. Each line of the debug displayed is made up of DebugItem. The DebugOutputView has a data template which then determines the color of the various parts of the debug.

Чи допомогла вам ця стаття?