Creating Ultra Tasks

In this article

Overview

You can create an Ultra Task after you have created the Pipeline in SnapLogic Designer. You can create an Ultra Task in Designer or Manager. When you create an Ultra Task in Designer, the Pipeline is pre-selected when you open the Create Task dialog. When you create an Ultra Task in Manager, you must select a Pipeline to associate with the Task.

Creating an Ultra Task includes the following topics:

Creating an Ultra Task

  1. Open the Create Task dialog doing one of the two following methods:
    • In Designer, click  to expand the toolbar, and click   to display the drop-down menu, then select Task > Ultra Task to display the dialog:
    • In Manager, navigate to the target Project, click  to display the drop-down menu, then select Task > Ultra Task to display the dialog.


  2. In the dialog, make the following required selections:
    1. Name. Enter a name for the Ultra Task. This name is used in the URL when the Pipeline has unconnected inputs/outputs.

      Unless otherwise noted, the names of any asset or project is limited to UTF-8 alphanumeric characters and these punctuation characters !"#$%&'()*+,-.:;<=>?@[\]^_`{|}~.

    2. Pipeline. Select the Pipeline to run from the Pipeline drop-down menu. This Pipeline is triggered when the Ultra Task is called. If applicable, edit any of the parameter values from the Pipeline.

    3. Snaplex. Select the Snaplex on which to run the Pipeline from the Snaplex drop-down menu. The Snaplex must have a FeedMaster associated with it.


  3. If applicable, modify the Configuration Options in the dialog window, and click Save.

  4. You can activate your Ultra Task through a variety of methods.
    See Invoking Ultra Pipelines as Tasks for details about activating your Ultra Task.

Once activated, the associated Pipeline is started on the Snaplex using the Ultra run policy that is specified in the Task dialog window. The Ultra Pipeline consumes messages from the FeedMaster and processes input documents. The Pipeline restarts automatically after the Ultra Task or the Pipeline itself is modified and saved—including known child Pipelines and accounts that are not computed dynamically using an expression.

Viewing Ultra Task Details

After you create and enable your Ultra Task, you can view details about the Task.

  1. Open the Task Details page for your Ultra Task by clicking View Details:


  2. On the Task Details page, view Pipeline execution information for any instance by clicking Run Details.


  3.  Navigate to the Dashboard Pipeline Wall to monitor the executions details about your Ultra Task.

Notifications

You can create email notifications based on the status of the Scheduled Task. If your Org supports Slack notifications, you can add Slack channels or recipients. To add recipients for Task notifications:

  • In Notifications, enter each recipient's email address, separated by commas.

  • If Slack notifications are configured for your Org, then the following fields support dropdown lists containing your Slack channels and users. For each field, you can also type to invoke suggested recipients in the field. 
    • Direct Message(s). Select Slack recipients from the dropdown list. 
    • Channels. Select Slack channels as recipients from the dropdown list.

  • Select the status event for which Notifications are sent from the When Task has selector:
    • Started. The Task is activated.
    • Completed. The Task is completed.
    • Failed. The associated Pipeline did not execute.
    • Stopped. The associated Pipeline has stopped abruptly and the Task is no longer running.

Recipients receive notifications based on the selections in the When Task has field.

Ultra Task Configuration Options

You can configure the following settings for your Ultra Task. Each field has a default value, except where indicated.

Instances per Snaplex

You can specify how many instances of the Pipeline should be running on a Snaplex. For example, to achieve redundancy, you can configure an Ultra instance per document.

The default value is one instance per Snaplex.

If the Snaplex has five nodes and ten Ultra Task instances are actively running, then the Snaplex starts two instances on each node. The algorithm for distributing executions on nodes is based on how many Ultra Task Pipelines are running already. Each instance connects to the input queue, and receives notifications of message delivery as they come in.

When multiple instances are running, the message is delivered to a single instance. If the Pipeline or node fails for any reason, then the message is unacknowledged in the queue. Consequently, when the consumer is recognized as no longer being connected, the message returns to the queue and is picked up by another instance. In the correct configuration, messages should not be lost.

Alias

For high availability and disaster recovery contexts, you can provide an alias for the Task in the Alias field. Tasks must have the same Alias. When an Ultra in one region fails, a Snaplex in another region can run the Ultra Task by invoking the Task that shares the Alias name. The Ultra Task that shares the Alias must be in the same project folder as the primary Ultra Task, but be deployed to different Snaplex instances.

Bearer Token

You can use the auto-generated bearer token as the HTTP Authorization header. If you clear this field, then requests are authenticated by the Pipeline itself. You can also modify the field value as required.

Max Failures 

You can indicate the maximum number of consecutive failures in a short period of time by entering a value in the Max Failures field. When this threshold is reached, the Task is automatically disabled. 

The default value is ten document processing failures.

Set this value to zero if the Task should never be disabled. 

Max In-Flight

You can prevent an excessive number of documents from being queued on a single, slow execution. Once the execution reaches this threshold of documents being processed, requests are distributed to other instances of the Ultra Pipeline. 

Set the Max In-Flight value to the maximum number of documents that can be processed by an instance at any one time.

The default value is 200 documents.

You can set this value to one, but doing so affects performance, because a value of one would disable the prefetching of documents. Set this value higher if the Ultra Task executions take a long time.

Pipeline Parameters

You can specify Pipeline parameters. If you choose a Pipeline that contains Pipeline parameters to run in the Ultra Task, then these Pipeline parameters also appear in the Create Task window, where you can modify them. In the following example, the parameter keys path, full, and table name are displayed, with their entries as the corresponding values. 

In the full field, the values contain nested JSON.

Change the Run Policy

When you create an Ultra Task, Ultra is the chosen Run Policy by default. 

If you change the Run Policy setting to Triggered or Scheduled, the underlying Task type is modified. In such cases, you must re-configure the Task.