Skip to main content

Task Monitoring

Xylok makes use of background workers to perform long-running tasks, such as importing data, producing reports, and rebuilding control compliance information. To keep the user informed of this progress, every Xylok page has a task monitor in the sidebar in the bottom portion, just above the logged in user information.

Sidebar task monitoring

This sidebar refreshes itself every few seconds. It displays a count of the number tasks in the background, including in progress, pending, failed, and successful tasks.

Downloads and Multiple Tabs

The sidebar monitor is in charge of initiating downloads for exports. For example, if you go to Reports -> Individual Findings, that task will be associated with your user and queued up in the background. From there, you can navigate within Xylok freely and the sidebar will continue to check the status of that export. When it finishes and the report is ready to download, the sidebar will automatically have your browser start the download.

This process generally works as you'd expect. There are a few things that might lead to unexpected behavior though:

  • Tasks are associated with your user. If you log in to Xylok from multiple browsers or multiple locations, all those instances will start watching the same tasks--if a task finishes with a download, all those browsers will download the file.
  • On the other hand side, Xylok avoids multiple downloads within a single browser session, even if you have multiple tabs or windows open. The most recently opened tab takes over monitoring and all the other tabs simply reflect that information. This has a few affects:
    1. When a download is initiated it will appear in the most recent tab, so if you have to explicitly choose where to save a download that prompt will appear there
    2. If you close the most recent tab, one of the other open tabs will randomly take over monitoring
    3. Monitoring is coordinated through the browser's Local Storage API, so if that's blocked for security reasons (not common) you may experience issues.

If needed, you can force a download from the task monitor page by clicking the "Download" link next to your completed task.

Task Monitoring Page

Clicking the task monitor in the sidebar will bring you to the full task monitoring page. This page displays all the details about the background tasks you have started. A typical task page will have one or more sections for different tasks statuses.

Task monitoring page

The possible sections of this table include:

  • Successful: Task completed successfully, with no exceptions thrown. Where applicable, the View action for that row will take you to the newly imported item
  • Failed: An exception was thrown while processing the task. Click the View link to see more details, including a stack trace if you need to report the error to Xylok.
  • Action Needed: Any items that appear in this section need more information to proceed. For example, when importing CKL files Xylok may not be able to match the files to existing Xylok machines--instead, it will prompt you to match them up manually. Click the View link to enter the question flow for these types of items.
  • Running: A worker is actively processing the task. The message may give you more information about the progress of the task.
  • Pending: These tasks are waiting for a background worker to pick them up. This can happen if you (or other users) have a lot of tasks running already.

Action Needed Tasks

  • Tasks in the Action Needed section require additional information to proceed. These tasks will have a "View" link on the right side which will take you to an area to handle whatever action is required.

Task with action needed

Clicking the View for this CKL import in this case brings us to a page like this:

Task with action needed next step

Do whatever the page(s) require and the task should proceed. If instead you no longer want to import the data and/or proceed with the task, you can also choose to remove the pending tasks in the Action Needed section. See the next section of this article for more information.

Removing Tasks

Completed tasks (successful and failed) and Action Needed tasks all offer the ability to delete all tasks in the section. Click the "Clear" button for the section you want to clean out and Xylok will permanently remove those items.

Task clear button

Only items within the clicked section will be removed.