PhixFlow Help

Task

Tasks in PhixFlow perform various jobs, including running analysis, archiving, and clearing old managed file and performance log records. Tasks are bundled into Task Plans, which can be requested by users, scheduled, or triggered by actions.


 A task plan is a collection of tasks, which can be:

Tasks are configured to run in a certain order in a Task Plans, and can be set up to run on a scheduled date at a scheduled time.

A task plan that contains 1 task with 3 streams will process all streams at the same time.

Whereas a task plan with 3 tasks, each containing 1 stream, will run the streams one by one. It will wait for the previous task to complete, before starting the next.

If a mandatory task fails, then the next task should not be started.

The following fields are configured for task plans:

FieldDescription

Basic Settings

NameThe name of the task plan.
Enabled

When the task plan configuration is complete, tick this box to enable it for use. To prevent the Task Plan being run, for example during maintenance, untick this box and the Task Plan will not run on the schedule or manually.

ScheduledIf ticked, an extra section will appear. This allows a regular schedule to be set up for the task plan.
Suspend on FailureIf ticked, the Suspended flag will be set to true if any error messages are generated by the task plan during execution.
SuspendedIf the field Suspend on Failure is ticked, this box will be ticked by the system if any error messages are generated when the task plan is executed. This indicates that there is a problem which should be fixed before the Task Plan is run again. The next time the task plan runs, if this flag is still ticked, it will simply generate a one line error message in the log file stating that it cannot run as it has been suspended. To un-suspend the task plan, untick the field.

Tasks

A list of tasks in the task plan.

To add a task, click  and select the type of task you wish to add:

Schedule

This section only appears if the Scheduled box in Basic Settings is ticked.

Each of these elements can be specified with an explicit value (e.g 6), a range (e.g 9-12), a repeating group (e.g. 5/10 - equivalent to 5,15,25,35,...), or a list of single values, ranges, etc. e.g. 1,3-5,10,20/5.

Each of these elements other than Seconds can be set to a wild card ('*'), meaning all values.

SecondsSeconds element of the scheduled date/time, e.g. 0-59.
MinutesMinutes element of the scheduled date/time e.g. 0-59.
HoursHours element of the scheduled date/time, e.g. 0-23.
Day of Month

Day of Month element of the scheduled date/time, e.g. 1-31.

Day of Month can be specified relative to the end of the month e.g. 'L', the last day of the month, or 'L-2', two days before the last day of the month.

A day of month followed by a 'W' means the nearest week-day to that day in the same month e.g. '15W' means if the 15th falls on a Saturday the TaskPlan will run on the preceding Friday, and if it falls on a Sunday it will be moved to the following Monday, '1W' means the first week-day of the month, and 'LW' means the last week-day in the month.

Day of Week and Day of Month are mutually exclusive. One must be set to '?' (meaning no value specified), and the other defines the days that this Task Plan runs on.

Month

Month element of the scheduled date/time, e.g. 1-12

Month can also be specified as short names e.g. JAN,OCT-DEC

Day of Week

Day of week element of the scheduled date/time, e.g. 1-7. The week starts on Sunday. So Sunday = 1, Monday = 2, etc.

Day of Week can also be specified as short names e.g. MON,WED-FRI

A day of week name or number followed by an 'L' means the last day of week in the month e.g. 'FRIL' means the last Friday, '2L' means the last Monday.

A day of week name or number followed by a hash ('#') and a number means the Nth day of week in the month e.g. '2#2' means the 2nd Monday in the month, 'FRI#5' means the 5th Friday in the month - if there is no 5th Friday in the month, that is equivalent to specifying no day of week.

If the '#' character is used, there can only be one expression in the day-of-week field, so "3#1,6#3" is not valid, since there are two expressions.

Day of Week and Day of Month are mutually exclusive. One must be set to '?' (meaning no value specified), and the other defines the days that this Task Plan runs on

YearYear element of the scheduled date/time, e.g. 1970-2099.
Send By Email 

You can set up an automated email to be sent with the results of a task plan run.

Emails are generated in an outbound queue and actually sent by a separate email demon process. If it is not possible to send emails immediately, e.g. because the email server is down, the email demon process will try to re-send periodically until either it succeeds or until a timeout period has passed.

Email FromThe Email Address the generated email will appear from.
Subject ExpressionAllows the user to build a PhixFlow Expression which will be used to create the Email Subject. The internal variables _errors, _warnings, _messages, _suspended  and _taskPlan can be used in the Subject Expression.
Message ExpressionAllows the user to build a PhixFlow Expression which will be used to create the message body of the email. The internal variables _errors, _warnings, _messages_suspended and _taskPlan can be used in the Message Expression.

Notification

A list of the users that will be notified with the results of the task plan.

This section contains the additional button - this will bring up the list of users in PhixFlow. Drags users into this list to add them as an email recipient. 

Doing this will add the users with a blank notification rule, which means that the users will get an email every time this task plan runs. Edit the users in the list to update the notification rule, or add users manually using the button. For each user notification rule configure the following settings:

UserSelect a user configured in PhixFlow from the drop down list.
Email As

Choose one of:

  • To
  • Cc
  • Bcc
Expression

An Expression which governs whether the recipient will receive the email generated by the Task Plan on completion. The internal variables _errors, _warnings, _messages and _suspended can be used in the User Notification Expression.

In particular, the _suspended variable can be used to send an email to a recipient only if a Task in the Task Plan failed - leading to the Task Plan being suspended. While a Task Plan is suspended, no further emails will be sent even if the Task Plan is scheduled to run.

Further, using the _errors variable, this expression can be set up so that a recipient is sent an email only if there are more than a certain number of error messages.

Description

DescriptionDescription of the task plan.

Analysis Tasks

Analysis tasks run analysis on a number of streams.

Archive Tasks

An Archive Task can be created to archive data no longer needed in PhixFlow for processing. When a Stream is archived, PhixFlow creates an Archive Log with useful details of the data archived. Optionally, the archived data can be saved to a file. If this is done, the data can reloaded into PhixFlow using Restore Archive.

If you set up an archive task with no stream added, all streams configured for archive will be archived by this task, unless this stream has been added to another archive task. Even if you set up a catch-all archive task in this way, you might still want to have separate archiving for certain streams if they contain large amounts of data for each run, in which case archiving can sometimes task a while - this means you can schedule archiving for these streams in particular at a time when you system is quiet.

Rollback Tasks

A Rollback Task can be created to roll-back one or more streams. On execution, it fully rolls back all data in the stream, deleting the stream-sets.

System Tasks

A System Task performs system-wide housekeeping activities. These include deleting:

  • and optionally archiving log messages
  • managed file entries
  • email entries
  • temporary files created by file exporters to send by email
  • data from incomplete stream sets.

The System Task should be run daily, or at a minimum every week. If incomplete stream sets are not deleted, they can slow down PhixFlow's performance. Depending on your PhixFlow database, queries that have to exempt many incomplete stream sets can reach system limits. This can prevent PhixFlow and its applications from running.

The archiving periods, and whether to archive log messages before they are deleted, are controlled by the following parameters in System Configuration:

Configuring tasks

The following fields are configured for each task:

FieldDescription

Basic Settings

NameThe name of the task.
MandatoryIf ticked, when the task plan to which this task is attached, is run this task must succeed before the Analysis Engine will continue with the next task in the task plan.
OrderThe order that the task will be run in the task plan.
Task Type

One of:

  • Analysis Task
  • Archive Task
  • System Task

Streams

A list of streams assigned to the task. This section only appears for analysis tasks and archive tasks.

Press the  button to bring up the list of streams - drag streams into this list so that they will be run (for analysis tasks) or archived (for archive tasks). Remember that for archive tasks, if no streams are added, all streams that have archiving configured will be archived, unless they have been added to another archive task.

Description

DescriptionDescription of the task.

Form Icons

The form provides the standard form icons.

See Also 14 Creating Tasks and Task Plans




Please let us know if we could improve this page feedback@phixflow.com