Difference between executing synchronous and asynchronous Automation Services jobs using "Spotfire.Dxp.Automation.ClientJobSender".

Difference between executing synchronous and asynchronous Automation Services jobs using "Spotfire.Dxp.Automation.ClientJobSender".

book

Article ID: KB0082583

calendar_today

Updated On:

Products Versions
Spotfire Automation Services All Versions

Description

This article details differences in synchronous and asynchronous mode used while executing the Automation Services job and also how to execute a job using these options.

Issue/Introduction

Difference between executing synchronous and asynchronous Automation Services jobs using "Spotfire.Dxp.Automation.ClientJobSender".

Resolution

Prerequisites:

These files are available in the Automation Services installer and need to be copied manually (Both the files should be in the same folder on any client machine):

  • Spotfire.Dxp.Automation.ClientJobSender.exe
  • Spotfire.Dxp.Automation.ClientJobSender.exe.config
Create a Simple Automation Services Job file. For example with the following tasks:
  1. Open Analysis file from Library and 
  2. Save the analysis file to Library (embedded) and name this Job file "TestJobfile.xml".

Example Automation Server URL: http://[SpotfireAutomationServer]/SpotfireAutomation/JobExecutor.asmx

Synchronous Job Execution:

  1. Open a command prompt (as an administrator).
  2. Navigate to the folder that contains the files shown below:
    • Spotfire.Dxp.Automation.ClientJobSender.exe
    • Spotfire.Dxp.Automation.ClientJobSender.exe.config
  3. Execute the command line job execution, for example:
    • C:\ClientJob_SenderFolder>Spotfire.Dxp.Automation.ClientJobSender.exe http://[SpotfireAutomationServer]/SpotfireAutomation/JobExecutor.asmx "C:\Temp\TestJobfile.xml"

When you hit enter you will see the job execution as follows:


01:41:28.099: Connecting to server.
01:41:28.177: Calling web service http://[SpotfireAutomationServer]/SpotfireAutomation/JobExecutor.asmx with a timeout value of 600 seconds, please wait.
01:41:28.177: Calling web service asynchronous.
01:41:32.770: Loading Automation Application...
01:41:48.129: Executing task 1 of 2: Open Analysis from Library....
01:42:19.491: The execution of the job succeeded, server response:
01:42:19.507:

01:42:19.507: Finished

 

As, you can see, each entry is logged and you can check the status of the job execution. Automation Services jobs are executed synchronously by default.

Asynchronous Job Execution:

If the same job is run asynchronously, there is a slight modification to the command line job execution line from Step 3 above, as shown below:

  • C:\ClientJob_SenderFolder>Spotfire.Dxp.Automation.ClientJobSender.exe http://[SpotfireAutomationServer]/SpotfireAutomation/JobExecutor.asmx "C:\Temp\TestJobfile.xml" async

 

When you hit enter you will see the job execution as follows:

 

02:11:23.223: Connecting to server.
02:11:23.317: Calling web service http://[SpotfireAutomationServer]/SpotfireAutomation/JobExecutor.asmx with a timeout value of 600 seconds, please wait.
02:11:23.317: Calling web service asynchronous.
02:11:24.254: Job launched.
 

As, you can see, it does not keep track of the status of the job execution. Once the job execution starts, its job is done. We can only check the status of the job execution using entries in Spotfire Automation Services debug log files.

Additional Information

Doc: TIBCO Spotfire Automation Services documentation: