This page details out error handling in Exalate application.

Exalate has a built-in error recovery mechanism which allows you to fix problems and resume the synchronization from the moment it failed.

Introduction

Synchronization can fail at various levels such as:

  • Network connectivity 
  • Authentication issues
  • Configuration failures
  • Compatibility problems
  • Script errors

When Exalate raises an error synchronization is paused allowing an administrator to rectify the problem and resume operations.

Depending on the type of an error, synchronization is paused on one of the error levels:

  • issue level
  • connection level
  • Exalate app

For instance, when Exalate detects a script error then the connection is paused. All other synchronizations which are not related to that particular connection can proceed as usual.

If there is an error such as a connectivity problem, all connections are paused until the connectivity problem is restored.

If the Exalate app has a problem, all synchronization is stopped.

Troubleshooting

 In order to find a cause of the error we recommend to perform basic troubleshooting steps.

Check if the error you're facing is already described in the troubleshooting section.


Errors overview page

In the Exalate admin menu you can access the Errors tab to get an overview of errors.

Errors list

To get the overview of all errors navigate to Errors tab from the Exalate admin menu.


Error details

Clicking on the Error in the errors list you can get detailed description of the error. 

Error details include:

  • error impact: whether it affects a certain issue or connection synchronization. It may affect the whole instance as well.
  • related connection link
  • error type
  • error detail message: provides detailed description what's wrong
  • error stack trace: helps to find the root cause of an error


You can access the connection from the error detail page to fix the script

In the very bottom you can also check the local and remote replica values. They are displayed as a prettified json file.



Below you can see how the replica values look. 


Resolve and Retry 

Once the error has been fixed, you check whether  the fix works and proceed with the synchronization.

Use Resolve and Retry button which you can access from the errors list. 


If the error remains generate support.zip file and contact support.

Decrease error impact 

Exalate allows to decrease error impact level

In case the error does not affect all issues that are under sync, you may change the error impact to the issue level.  The synchronization will be blocked only for this specific issue.  

The example below shows how the impact column looks on the errors list screen.


Error notifications

When an error is raised, a notification will be sent out to either the exalate-administrators group (if configured) or to the jira-administrators group. 

There are 3 types of notifications:

  • The in-app notification which brings up a pop-up window
  • An email notification containing the error message
  • A sync status highlighting that something went wrong

 Error debugging

Sometimes you need to have a closer look at synchronization scripts to find out what's wrong. 

You can debug errors from the scripts when error blocks the issue synchronization and requires Resolve and retry to run again.

Debugging can be used in Outgoing sync(data filter) and Incoming sync(create and change processor).


Error logging

You can enable logging for Exalate app. For example on Jira Server, the log file is stored in <JIRA-HOME>/log directory.

It doesn't block the synchronization and requires the processor changes to run again.

Exalate allows to enable debug logging temporarily or permanently.