FS
Documentation

Duty3G/User Guide/Duty Management

This page was last modified 05:27, 6 August 2007.

From Documentation

Jump to: navigation, search

Contents

Duty Management

This chapter provides much of the background you will need to understand how duty3G works and introduces you to the terms and concepts used in the product.

The topics covered include:

Duties are assigned to a duty role and users are restricted to running duties from their list of duty roles.

The execution of each duty is logged to an audit trail, so the system administrator or manager can verify that it ran successfully, who submitted it, and the time it finished.

Many standard duties, such as cycling audit trails and removing core files, are provided with duty3G. See How to list details of all duties on page 54 for more information on verifying or displaying duties.

A duty can also run a duty3G menu option, so that users can select from a small list of commonly used options without having to navigate around duty3G’s menu structure. These concepts are described in greater detail in the following sections.


Duties

Many operations and system administration tasks can be implemented as duties. duty3G’s duty list contains lists of common tasks grouped by function. duty3G can run a duty automatically, that is without operator intervention, or it can prompt operators and other users when a duty is due to be performed. At any time, users can run any duty to which they have access simply by selecting it from a list.


Simplifying tasks

duty3G duties hide underlying complexity by separating the definition of a task or command from its execution. This means that less experienced or less qualified staff can perform most administration and housekeeping tasks simply by selecting duties, without having to remember complex commands. By encapsulating complex tasks as simple duties you can reduce the incidence of operator error.


Enhancing security

Another source of accidental data loss and security problems is the root password. You can delegate to operators many tasks that would otherwise require root privileges, so fewer staff need to use the root password. Duties can also execute commands using another login ID (e.g. oracle).


Additional features

Duties can also run non-interactive commands on a remote host. See How to Run a Duty on page 48 for more details.

Duties are assigned to roles and users are restricted to running duties from their list of roles.

The execution of each duty is logged to an audit trail, so the system administrator or manager can verify that it ran successfully, who submitted it, and the time it finished.

Many standard duties, such as cycling audit trails and removing core files, are provided with duty3G. See How to list details of all duties for more information on verifying or displaying duties.

These concepts are described in greater detail in the following sections.


Duty Modes

The mode is the ‘how and when’ of a duty. A duty may have a mode of scheduled, atrequest or automatic, depending on these factors:


Scheduled duties 
are performed according to a regular cycle – for example ‘Weekdays’, or ‘First Friday every month’. Each day the list of duties scheduled for that day is displayed to the user. The operator can work through the day’s duties in sequence or skip some and return to them later in the day. Duties that aren’t run on that day can be carried forward to the next day.
Automatic duties
like scheduled duties, run to a regular cycle. Unlike scheduled duties they are initiated automatically at set times and don’t interact with an operator.
At-request duties
only run when selected by an operator.

Scheduled duties can also be run ‘at request’.


When will a duty run and how?

Duties are defined as scheduled, at-request or automatic. Scheduled and at-request duties are manually initiated by a user, usually an operator. The main difference between the two is that duty3G prompts the user when a scheduled duty is due to be run by displaying its details in the list of outstanding scheduled duties. At-request duties are run on an on demand basis.


Scheduled duties

Scheduled duties are run according to a regular cycle, such as ‘daily’, ‘every Monday’, ‘First Friday every month’, etc. You can specify that the duty be performed at any time on the scheduled day, or you can nominate a ‘time window’ such as an operations shift during which it appears in the list of outstanding duties. The days and time periods for scheduled duties are controlled by the schedule time, which is described in more detail in Scheduled Duties, Schedule Times and Shifts.

You can specify what action should be taken if any scheduled duty is not performed by the end of the scheduled time; for example, a duty can:

Scheduled duties can also be run out of cycle, that is, outside the scheduled time by displaying them on the screen and activating them using the Perform > Selected option. Examples of scheduled duties are running a daily backup or fortnightly payroll.

Scheduled duties can be set up with dependencies, that is, a duty that cannot run until another duty on which it is dependent has been performed. For example, a backup duty may be set up to depend on an ‘Acknowledge previous backup’ duty.


At-request duties

At-request duties can be run at any time. The user selects one from the list of atrequest duties and it is submitted immediately. Some examples: changing a user’s password, displaying or killing processes.

As well as being initiated by a user, scheduled and at-request duties may interact with the user, to display results or request information or action. For example, a duty might prompt the operator to change a tape or to supply the names of files to be restored.


Automatic duties

Automatic duties, like scheduled duties, are run according to a regular cycle. The difference is that they are initiated by duty3G at a specific time on the scheduled day, and are non-interactive. This means that an automatic duty can’t pause for operator action. Examples of duties that could be automatic include cycling audit trails and polling another host.

Only users with special privileges (‘runall’ capability) can run an automatic duty at request.

See Run Time for Automatic Duties for details of how to specify run times.


Scheduled Duties, Schedule Times and Shifts

Duty3G maintains a table of processing cycles, called schedule times. A schedule time defines the days on which a duty should be run and, optionally, a time period during those days. The time period is like a ‘time window’ during which the duty appears on the list of outstanding scheduled duties for the day.

You choose a schedule time from the available list when defining a scheduled or automatic duty. Some common schedule times are provided – for example ‘Daily’, ‘Weekdays’, ‘Monthly – First Monday’ and so on. You can also add new schedule times based on your own processing cycles and shifts.

Schedule times are allocated an Order number when they are first defined and there is no option to re-order schedule times, so if you want to keep related schedule times together, you must assign them similar numbers. By default, duty3G allocates numbers in increments of 10, therefore there are at least 9 numbers available for use between each default order number.


Defining schedule times

You can define schedule times in one of two ways. The first way is simply to list the days and months. The prompt form for adding schedule times has three fields, Day of Month, Month of Year, and Day of Week. If all the conditions in these fields are met, then the duty is scheduled for today.

For example, to schedule duties for the first Monday and Friday of every month, you would fill in the fields like this:

Day of Month 1-7
Month of Year 1-12
Day of Week 1,5

Leaving a field’s default value means ‘always true’, so in this example every month is included.

The other way is to specify a Schedule command that returns ‘true’ if the duty is due to be run today. db_datemat is one such command. See the db_datemat(1) manual page for more information and examples.

You must enter either a Schedule command or one or more of the day, month and time fields. Note that you can’t specify a time period in a schedule command — it can only be used to schedule duties for a whole day.

Schedule times can include a time period, so that a duty will only appear on the duty list between certain hours. You simply specify the start time and a period in hours and minutes.

Example: You want a number of resource-intensive scripts to be run each weekday outside business hours, so that interactive users aren’t affected. To do this, define a new schedule time called ‘After hours’ as follows:

Day of Week 1-5
Start time 18:00
Period length 06:00

Any duties that use this schedule time will only appear on the duty administration list between 6 pm and midnight from Monday to Friday.

If Start time and Period length are not filled in they default to 00:00 and 24:00 respectively – that is, the whole day.

Note
Note
You cannot specify a period of more than 24 hours.

Schedule times can span midnight. Suppose your night shift works from 10 pm to 6 am. For duties that must be run by the night operators, define schedule times with a start time of 10 pm and a period of 8 hours. The duties will appear on the operator’s list of outstanding duties at 10 pm on the scheduled day. 8 hours later (6 a.m.), the duty will disappear or be marked as outsanding/overdue if not performed before then.


Overriding the Schedule Time in the Duty

You can override the time period for a particular scheduled duty. The Time(s) field in the duty form modifies the period defined in the schedule time. If you omit the start or end time it defaults to the start or end time in the schedule time.

If the time period in the duty does not overlap the period specified in the schedule time, the times in the duty are used.

Examples: A schedule time has a start time of 08:00 and a period of 16:00 – that is, from 8 am until midnight.

Time(s) 14:00-20:00 from 2 pm until 8 pm
Time(s) -14:00 from 8 am until 2 pm
Time(s) 14:00- from 2 pm until midnight
Time(s) 3:00- from 3 am until midnight
Time(s) -3:00 from 8 am until 3 am next day

If the start time is greater than the end time, the schedule time begins at start time on the scheduled day and ends at end time on the next day. In other words, the period spans midnight.

Example:

Time(s) 18:00-06:00

means ‘from 6 pm on the scheduled day until 6 am the next day’.


Run Time for Automatic Duties

For an automatic duty you must specify both the days on which it will be run, and the time of day. The schedule of days is specified in the When field as for any other duty. The run time is specified in the format HH:MM (24 hour clock). For example, 9:15pm is specified as 21:15.

To run an automatic duty more than once on the scheduled day, specify the time in one of three ways:

Time(s) 10,14,18:00 10 am, 2 pm and 6 pm
Time(s) 07:00,15,30,45 7:00, 7:15, 7:30 and 7:45 am
Time(s) 09,18:00,30 9:00 & 9:30 am, 6:00 & 6:30 pm
Time(s) 09-17:00 every hour from 9 am to 5 pm
Time(s) 00-23:05 5 minutes past the hour every hour
Time(s) 09,12,15:00 9 am, noon and 3 pm
Time(s) 18-23:00,30 every half-hour from 6 pm to 11:30 pm
Note
Note
You can have a list or range of hours to the left of the colon, and a list or range of minutes to the right of the colon. You may not have a list of exact times. For example, 18:00, 19:15 is not allowed. In effect, you can only specify one ‘:’ in the Time(s) field.


Adding and Maintaining Duties

Viewing and Performing Duties

Appendix A - Installing duty3G

Appendix B - Duty3G Menus by Role

Glossary