<< Click to Display Table of Contents >> Connector error control and diagnostics |
Overview
When configuring Connectors in Bizagi, you may rely on several features for error control and diagnostics.
One of these features is the use of Traces whenever you detect there is an issue with the execution of the Connector, and you wish to retrieve further detail.
Connector traces
Whenever you are debugging a Connector execution (in Development environments) or whenever you wish to retrieve further detail about a failed execution, you may choose to turn on the External connectors traces.
Keep in mind that Connectors traces can be enabled anytime, but it is strongly recommended to enable them temporarily only when needed (and afterward, to disable them). Changes in this configuration will most likely require a reset in your Work portal services. |
Enabling these traces is useful to track down, after an error in the application, the exact point where said error has happened. There are 5 points where detail is logged and you may diagnose if there is a problem when executing your Connector, or whenever transformations were being applied to the information.
Types of traces
The following traces are logged as detailed in the table below.
Chronological order |
Trace type |
Description |
1 |
Inputs |
Leaves a JSON file with the inputs sent to the Connector before the execution of its logic. Its name has the following convention: [timestamp]_[case_identifier]_IN0_[Connector name]_[action name].json Note that timestamp is set as yyyyMMddHHmmss. |
2 |
Inputs transformed |
Leaves a JSON file with the inputs sent to the Connector after the execution of its logic. Its name has the following convention: [timestamp]_[case_identifier]_IN1_[Connector name]_[action name].json Note that timestamp is set as yyyyMMddHHmmss. |
3 |
Outputs |
Leaves a JSON file with the outputs received from the external system before any transformation done by Bizagi. Its name has the following convention: [timestamp]_[case_identifier]_OU0_[Connector name]_[action name].json Note that timestamp is set as yyyyMMddHHmmss. |
4 |
Outputs transformed |
Leaves a JSON file with the outputs received from the external system after all transformations done by Bizagi. Its name has the following convention: [timestamp]_[case_identifier]_OU1_[Connector name]_[action name].json Note that timestamp is set as yyyyMMddHHmmss. |
5 |
Connector logic |
Leaves a .log file that stores all the LOG commands found during the Connector logic execution. More information about these commands can be found in this article. Its name has the following convention: [project name]-bz-ctrl.log |
Additional measure oriented to error control
It is strongly recommended that you also define the service's expected time, so that you can explicitly assign both: a timeout for the service, and a logging threshold.
These properties can be set at the specific interface's properties:
•The logging threshold parameter for interfaces leaves a log to alert you about those interfaces whose invocations are delaying more than expected (more than usual). In this way, you can perform early diagnostics on your Web service and any additional variables affecting its performance.
•The timeout thrown in a service invocation is due to the service delaying more than its timeout definition.
For a service invoked in an asynchronous activity, the timeout definition is taken from the minimum time set from either: the timeout property set for the asynchronous task, or the timeout property set for the specific interface (through interfaces administration in the systems module).
How to trace your Web service?
With the following steps, we will illustrate how to use the interface invocations trace to detect and diagnose issues in external Web services invocations.
1. Detect the error
As a most common practice, you may find that your Web service is invoked from an Asynchronous Activity.
Should the invocation fail, further error detail can be viewed from the Admin menu, in the Asynchronous Activities console option.
2. Setup the traces configuration
Through the Tracing options, enable all of the Interfaces traces.
3. Re-run the interface invocation (to log the error detail)
Retry the invocation of the interface to have a log with detail.
Then, browse into your Bizagi Server and into the Connectors traces folder (in this .NET example, this location would be C:\Bizagi\Projects\[project_name]\Temporary\Connectors).
It is important to note that not for all cases, you could have all the files recorded.
For example, if an error occurs in the transformation of inputs from Bizagi, then only the first file (Inputs) will appear because the error occurred before the transformation was made.
4. Validate the traces to identify the error (one by one)
Validate information contained in these traces.