The Tasktop Sync Dashboard

Most interaction with Tasktop Sync will take place through the Tasktop Sync Dashboard, which displays statistics, active synchronizations and errors, as well as controls for the synchronizer.

Tasktop Sync is built on top of Eclipse, an open-source project which started out as a tool for Java programmers, but which has developed to become a powerful platform for many different applications.

In a desktop installation, you can bring up the Tasktop Sync Dashboard by right-clicking on the Tasktop Sync icon in your system tray and selecting “Open Taskstop Sync.” If this icon isn’t visible it means that Tasktop Sync isn’t running and you can start it from the start menu.

In a Windows service installation you must stop the running service, give permission for the service to interact with your desktop, and then restart the service. This allows the Tasktop Sync UI to access your desktop for configuration. When configuration is complete you reverse these steps to force Tasktop Sync to run in the background again. All of these steps can be performed simply using the Tasktop Sync Service Manager that can be accessed from the Start Menu.

This section explains the layout of Tasktop Sync and how you can use the provided views to manipulate Tasktop Sync. To configure Tasktop Sync please see the configuration section.

Tasktop Sync Dashboard Layout

Along the very top of the Dashboard window is a toolbar with buttons to start, restart, stop and pause/resume Tasktop Sync. These actions can also be accessed by right clicking on the Tasktop Sync icon in the system tray. There is also a pull-down menu in this toolbar with some general Eclipse RCP application options.

The restart is a convenience: there is no difference between restart and stop-the-start, except that then you don’t have to wait for Tasktop Sync to finish cleaning up from stop.

When you click Pause, Tasktop Sync will finish any operations that have already been queued up, but will not issue any new queries.

In the main editor view is the Sync Dashboard itself.

At the top of the Dashboard is the statistics section, which displays a histogram of all synchronizations in the past 24 hours, a pie chart illustrating the ratio of synchronizer conflicts to successful synchronizations, as well as a variety of other statistics.

To the right of the statistics section is the actions section, containing buttons to perform other actions on Tasktop Sync. The “Send Statistics Email” button causes a statistics email to be sent to the configured address. The “Force Sync” button forces Tasktop Sync to run all repositories' changes queries.

Below the statistics and actions sections are the Sync Activity Monitor and the Pending widgets. The Sync Activity Monitor displays all the active synchronizations. The Error area shows all synchronizations that didn’t go through and require manual intervention. Double clicking on the items will open the Sync Log of that task, which provides more detailed information that may be helpful in determining why a synchronization failed. Right clicking on any of these synchronizations and selecting Synchronize will allow them to be retried, otherwise the synchronizer will automatically retry the synchronization if one the participating tasks has a new incoming change.

Below the Tasktop Sync Dashboard is a panel with three views: Console, Problems, Error Log, and Progress. The console view shows the log console, which outputs a stream of log entries as they are written to the log files. The Problems view displays a list of errors and warnings regarding your synchronizer configuration. The Error Log view shows any application errors or exceptions. The progress view shows all active jobs.

On the left of the screen, there is the Sync Services View. This is where you will set up your repositories and queries.

Typical Use-Case and Expected Behaviour

Note that before you can start synchronizing, you must configure Tasktop Sync as described in the configuration section

Creating Repositories

Creating Repositories with the Quick Start Wizard

If you are setting up Tasktop Sync for the very first time, we recommend that you use the Quick Start Wizard. This will allow you to see synchronization happening with the minimum number of steps, and will help you by walking you through the steps needed to create the repositories, then test them.

In order to use the Quick Start Wizard, you will need to create a test task in both of the repositories which you want to sync. (You can delete this task after you are done with the Quick Start Wizard.) You can use pre-existing tasks, but that is generally a bad idea if you are using a production system.

If you have not created a synchronizer.xml file yet, you will see a link “Launch Sync Quick Start” in the upper left Services view:

Click on that link to start the Quick Start Wizard. You will be presented with a welcome page which reminds you that you need credentials for the two repositories to sync and to create one task in each repository to synchronize.

Next, you will see a page which allows you to specify which kind of repositories you would like to sync. The order in which you specify the two repositories doesn’t affect the synchronization at all.

After you select which type of repository to use for Repository One and Repository Two, you will see two pages where you will enter your credentials for the two different repositories. These will be different depending upon which repository type you select. Here is a screen shot of the credentials page for an HP ALM and Quality Center connector:

The next page will ask you for the task IDs of the two tasks to synchronize; it might also ask for additional information needed for a particular type of repository. For example, for IBM’s RTC repository, you need to specify the project area, as shown in this screenshot:

You need to press the Validate button for each repository to ensure that the repository exists, is up and running, that the task exists, and that your credentials give you access to that task. If everything is correct, you will see a green checkmark next to the Validate button, and the Finish button will be enabled.

After you press Finish, Tasktop Sync will start synchronizing the summary attribute (and only the summary attribute): the attribute which gives a brief description of the subject of the task.

To see synchronizations in action, open your normal repository client (frequently, this is a Web browser opened to your repository) for Repository One. Find the task you listed on the last page of the wizard. Now find the appropriate task with Repository Two. Note their names at this point.

Now change the summary in Repository One and submit it. (In the language of the repository’s client UI, it will probably want you to Save, Submit, or Synchronize.) Now refresh the task in Repository Two, and note that it will change to the same as the summary in Repository One. (You might need to wait for a second before refreshing.) Now modify the summary in Repository Two and note that it will change in Repository One.

At this point, you are ready to do a more in-depth evaluation.

Creating Repositories with the Task Repositories View

If you already have Tasktop Sync installed, you must use the Task Repositories View to create your repositories. (You might need to delete one to make room for the new one first.) Right click in the Task Repositories and select “Add Task Repository...” to initiate repository creation. Follow the on screen instructions to create the repository. Note the value you use in the Server: field of the repository as you will need to use this value to specify which repositories should be synchronized.

Once you have filled out that form, we strongly recommend that you validate your credentials before finishing; press the Validate Settings button to make sure that you can connect to the repository.

Set up Queries

To create queries, right-click on the repository, in the Task Repositories view, you would like to create a query for and select New Query.

At this point, you will get a wizard which walks you through creating a query for your specific repository type. Here is the first page of the HP ALM and Quality Center wizard:

It is possible to use a query that you saved on the server. We advise doing so when possible. In such cases, the first page of the query-building wizard will say something like “Create query using a favorite filter”. Select that radio button, and the next page will allow you to select from named queries on the server. You will then be able to choose from named queries from the repository server:

Otherwise, select the radio button that says something like “Create query using a form” from the first page of the wizard and fill out the form as you would for the repository itself.

Starting the synchronizer

From the Tasktop Sync toolbar or tray icon’s context menu, start the Synchronizer by pressing the Start Button in the toolbar. Tasktop Sync will begin synchronizing tasks between the configured repositories.

The Synchronizer maintains a persistent store of all tasks that have incoming changes that have not yet been synchronized (including those with errors). When the server is restarted it will reload the queue and continue where it left off.

Forcing Synchronization

While setting up Tasktop Sync mappings and during troubleshooting it can be useful to force synchronization on one or more selected task. To do this open the Task List view, select one or more tasks, right-click, and select “Force Sync”. This will cause the selected tasks to be added to the Tasktop Sync incoming queue for processing.

Statistics

Tasktop Sync can send a daily statistics report to a configured email address. To set up an email address for this report read about how to Configure Notifications.

Maintenance

Once Tasktop Sync is set up and running you will not need to interact with it very often. However, there are some recommended maintenance tasks that can be performed periodically that will help ensure Tasktop Sync continues running smoothly.

Repositories

If the configuration your repositories has changed Sync must update the repository configuration to operate correctly. To update a repository configuration open the Task Repositories view and right click on the repository in question and select “Update Repository Configuration”. At this time you should also update the repository’s schema, this is done from the Schema View of the Task Mapping Editor. For instructions on updating the repository schema see the sub-section on the Schema View in the Task Mapping Editor section. After updating the repository configuration and schema Sync must be restarted for the changes to take effect.

Repository Users

If a user is added to a repository then that user needs to be mapped in the person mapping to ensure that they get synchronized correctly to the other repository. Simply update the person mapping with a mapping with the user’s identity in both repositories. Tasktop Sync must be restarted before the change to the person mappings will take effect. Read the person mapping section for more information on configuring person mappings.

Service Outtages

If either the Sync server or one of the synchronized repositories goes down for a longer time than the changes query polling interval it is strongly recommended that the configured initialization query is run to discover all the changes made during the server downtime. To run the initialization query open the Tasktop Sync Dashboard and click the Force Sync button in the Actions section of the dashboard. This will run the initialization query on all the configured repositories.

Logs

Tasktop Sync uses the apache log4j logging framework to maintain logs, and it keeps a single unfiltered log by default to make it easy for system administrators to diagnose problems with synchronization. The default location of the log file is $TASKTOPSYNC_HOME\workspace\tasktop\log\tasktop-sync.log. Log files are rotated and compressed on a daily basis.

Logging can be customized by creating the file $TASKTOPSYNC_HOME\workspace\tasktop\log4j.xml. See Logging for more information.

Tasks

While it is not common to delete tasks from a task repository, if you delete tasks in the repository that are matched by the queries, the local copy will be moved to an “Unmatched” category. Over time, this can get large. You will probably want to periodically delete tasks from the “Unmatched” category of tasks.