Simulation
Overview
Simulation allows you to validate the execution of a workflow, a specific set of tasks within a workflow, or a standalone task in the Universal Controller without actually having to execute the underlying operation of each task instance.
Using Simulation Mode
Outlined below is the basic procedure and processing flow for using Simulation Mode:
Step 1 | Designate a task for Simulation Mode by enabling the Simulate option on any Task Form. If enabled at the workflow-level, all tasks within the workflow will inherit the option and run in simulation mode. To customize simulation behavior of a task running in a specific workflow, you must select both the task and the specific workflow. If you only specify the task, the custom simulation behavior applies only to the task running standalone. By default, when an instance is running in simulate mode:
A simulated instance will transition through the same Status changes as a non-simulated instance, and honor virtual resource limits, mutually exclusive constraints, execution limits, etc. Authorization constraints, such as permission to execute on a particular agent, or execute using particular credentials, are also validated in simulation mode. |
---|---|
Step 2 | To simulate a Task Instance without the Default Simulation Mode Behavior, see Simulation#Customizing Simulation Behavior. |
Step 3 | Launch the Task. In the Activity or Task Instance List, you can add the Simulate field to determine if an instance is running under simulation mode. |
Customizing Simulation Behavior
Step 1 | From the Services navigation pane, select Other > Simulation. The Simulation list displays: |
---|---|
Step 2 | Enter / select Details for a new Simulation, using the field descriptions below as a guide.
To display more of the Details fields on the screen, you can either:
|
Step 3 | Click a button. The Simulation record is added to the database, and all buttons and tabs in the Simulation Details are enabled. |
Note
To open an existing record on the list, either:
- Click a record in the list to display its record Details below the list. (To clear record Details below the list, click the button that displays above and below the Details.)
- Clicking the Details icon next to a record name in the list, or right-click a record in the list and then click Open in the Action menu that displays, to display a pop-up version of the record Details.
- Right-click a record in the a list, or open a record and right-click in the record Details, and then click Open In Tab in the Action menu that displays, to display the record Details under a new tab on the record list page (see Record Details as Tabs).
Simulation Details
The following Simulation Details is for an existing Simulation. See the field descriptions, below, for a description of all fields that display in the Simulation Details.
Simulation Details Field Descriptions
The following table describes the fields, buttons, and tabs that display in the Simulation Details.
Field Name | Description |
---|---|
Details | This section contains detailed information about the Simulation. |
Task | Specifies the task you are configuring simulation options for. The simulation configuration only applies when the task is launched with the Simulate option enabled. When specified without a workflow, the simulation configuration only applies to the task when running outside of a workflow. When specified with a workflow, the simulation configuration only applies to the task when running within the specified workflow. |
Workflow | Specifies that the simulation configuration only applies to the task when running within the specified workflow. |
Vertex ID | Specifies if the simulation configuration applies to a specific vertex of the specified task within the specified workflow or any vertex of the specified task within the specified workflow. Only applicable when a workflow is specified. |
Status | Status for the Simulated Instance once completed. |
Exit Code | Specifies the Exit Code that the simulated task instance should complete with. By default, an instance will complete with an Exit Code of 0 (or 200 for the Web Service task). |
Simulation Variables | Specifies variables that should be added for simulation purposes, including any built-in monitor variables starting with "ops_trigger_". The Simulation Variables are for adding variables that the simulated instance would have normally produced, therefore, are only available after the instance is already Queued or Running. |
Publish Status | Specifies if Status events should be published to task monitor instances. |
Publish Late Start | Specifies if Late Start events should be published to task monitor instances. |
Publish Late Finish | Specifies if Late Finish events should be published to task monitor instances. |
Publish Early Finish | Specifies if Early Finish events should be published to task monitor instances. |
Execute Abort Actions | Specifies if Abort Actions should be executed for the simulated instance. |
Execute Email Notification Actions | Specifies if Email Notification Actions should be executed for the simulated instance. |
Execute Set Variable Actions | Specifies if Set Variable Actions should be executed for the simulated instance. |
Execute SNMP Notification Actions | Specifies if SNMP Notification Actions should be executed for the simulated instance. |
Execute System Operations Actions | Specifies if System Operation Actions should be executed for the simulated instance. |
Other Options | Specify Other Options for the Simulation record.
|
Metadata | This section contains Metadata information about this record. |
UUID | Universally Unique Identifier of this record. |
Updated By | Name of the user that last updated this record. |
Updated | Date and time that this record was last updated. |
Created By | Name of the user that created this record. |
Buttons | This section identifies the buttons displayed above and below the Simulation Details that let you perform various actions. |
Save | Saves a new Simulation record in the Controller database. |
Save & New | Saves a new record in the Controller database and redisplays empty Details so that you can create another new record. |
New | Displays empty (except for default values) Details for creating a new record. |
Update | Saves updates to the record. |
Delete | Deletes the current record. |
Refresh | Refreshes any dynamic data displayed in the Details. |
Close | For pop-up view only; closes the pop-up view of this task. |
Tabs | This section identifies the tabs across the top of the Script Details that provide access to additional information about the script. |
Output | If you need to simulate that an instance produces output, you can specify one or more Output records on the Simulation record from the Output tab. When running an instance in simulation mode, output specified on the Simulation record will be generated for the instance at completion time, specifically, when the simulated instances transitions to Success or Failed status. |
Task Type Specific Simulation Mode Behavior
You can only specify a Simulation#Status of Success and Simulation#Exit Code of 0.
Regardless, the Status transitions for a workflow depend solely on the outcome of the instances within the workflow.
Specifying the simulate option on a workflow indicates all tasks within the workflow run in simulation mode.
- The Calculate Critical Path option on the workflow will be ignored when the Simulate option is on.
- If the Simulate option on the workflow is off, but on for one or more tasks within the workflow, the Calculate Critical Path option will be honored.
You can only specify a Simulation#Status of Success and Simulation#Exit Code of 0.
In simulation mode, the instance still sleeps for the specified time.
You can only specify a Simulation#Status of Success and Simulation#Exit Code of 0.
In simulation mode, the instance transitions as if both Set Started and Set Completed commands were executed, that is, it will transition through Action Required, Started, and Success.
You can only specify a Simulation#Status of Success and Simulation#Exit Code of 0.
Regardless, the Status transitions for a recurring task instance depend solely on the outcome of executing the recurrences.
In simulation mode, Recurring instances still process recurrences, however, any created/launched target task instances will run in simulation mode.
- If you use a Target Task Monitor Condition, you must create a Simulation record and enable Status Publish for the Recurring task.
Monitors (Task Monitors, Agent File Monitors, Remote File Monitors, System Monitors, Variable Monitors, Email Monitors, and Universal Monitors)
The simulate option has no impact on (continuous) monitors associated with an enabled monitor trigger.
The simulate option is applied to (non-continuous) monitors running standalone or within a workflow.
Use the Simulation Variables to populate the
ops_trigger_*
variables, if necessary.
In simulation mode, the Universal Task Publisher instance is not created/launched.
Launch Task / Trigger Now System Operations
- In simulation mode, assuming you have enabled Execute System Operation Actions for the instance being simulated, any task instance created/launched by either the Launch Task System Operation or the Trigger Now System Operation , will run in simulation mode.