Job management
This page gives you general information on the
purpose and function of jobs. The individual, specific jobs together with their
function & configuration options are each described on the corresponding
module pages.
--> straight to the jobs in the "Portal &
Organisation" module
Jobs serve as periodically running utilities for
synchronising and processing data.
Examples of possible jobs:
- Creating groups on the basis of particular criteria
- Synchronising department and person data from the time management system, or
- Synchronising calendar data from the groupware system
- Synchronising absence reasons from the time management system
- Filtering defined irregularities in the time management system and, as a result
- Automatic generation of particular workflow requests
- Notifications in the event of particular occurrences (e.g. exceeding working time)
- Automated report generation and dispatch by mail
Jobs can be started automatically, with the help of a
so-called trigger. The trigger creates a schedule, so that the
jobs can be started as desired (hourly, daily, weekly or monthly, ...). The
setting can be configured to the exact day, hour and minute.
If required, the jobs can also be started manually at any time.
Jobs can also have an active or inactive status. With an active status the jobs are started according to the configured trigger. If they are inactive, however, they can only be started manually. The status can be changed at any time.
Monitoring of jobs is made possible by the "Active
jobs" view, where all active jobs can be seen at a glance. In
addition, with the appropriate parameterisation, the course of the job can be
traced with the help of the log entries. The parameterised log level (a defined
status during the course of the job, such as error, warning, ...) shows whether
a job ran without problems or whether particular problems occurred.
If required, mail dispatch can also be configured here. The mail is sent to a
defined person if a log entry with a specified level exists.
Some jobs are standard jobs, which can only be executed as
predefined - configurable jobs can be adapted individually to
user requirements:
--> creating and editing job
configurations
Definitions of terms
- A job is a periodically running utility that is necessary for the correct operation of the customer system. It carries out system activities that can be performed in the background.
- A configured job is a Webdesk standard job with a parameterised customer-specific configuration. This parameterisation is carried out via the 'Job configuration' tab in the job form. A configured job therefore uses the functions of a standard job, but with the settings that make sense for the customer.
- A job trigger is scheduling information per job that specifies the intervals at which the job is to be started. Several job triggers can be defined per job.
- A standard job that is configurable provides its own configuration form and is not yet executable as such. Only once a new job configuration has been created can it be started. A "non-configurable" job, by contrast, appears in the list of jobs immediately, so it is immediately executable (and schedulable), but provides no further parameterisation options.
Thanks to the flexible configuration option, a standard job can run in several "variations" in one system. Each configured job forms a new unit that can be scheduled separately.
Every module can "contribute" new jobs (both configurable and non-configurable) and thereby extend the "toolbox" of the Webdesk system in the job area.
Trigger
Jobs can be started automatically with the help of a so-called
trigger. The trigger creates a schedule, so that the jobs can
be started as desired (hourly, daily, weekly or monthly, ...). The setting can
be configured to the exact day, hour and minute.
If required, the jobs can also be started manually at any time.
Jobs can also have an active or inactive status. With an active status the jobs
are started according to the configured trigger. If they are inactive, however,
they can only be started manually. The status can be changed at any time.
-
Schedule type
The trigger is selected here: -
minutely trigger
If this parameter is selected, the job is restarted every minute -
hourly trigger
With this parameter the job is restarted every hour -
daily trigger
The exact time (hours and minutes) can be selected -
weekly trigger
The day of the week and the time can be selected -
monthly trigger
Selection of the day and the time at which the trigger is to start -
Simple trigger
Possible settings are the number of repetitions, start and end date, minutes in the interval. -
Cron trigger
This is a special kind of trigger. The cron expression can consist of 6 or 7 characters separated by spaces. These characters can represent all permitted values and can also contain some special characters (e.g. , - * / ). The character * stands here, for example, for all possible values (wildcard). The meaning of the other special characters can be found under the link given below.
In this way a point in time (hour, minutes, date, day, month, year, etc.) can be determined for the trigger. The cron expression can look like this, for example: 0 0 12 * * ?, and means that the trigger should fire daily at 12 o'clock (midday). - Legend (fields in the correct order):
-
Field name
Permitted values
Permitted special characters
Seconds
0-59
, - * /
Minutes
0-59
, - * /
Hours
0-23
, - * /
Day-of-month
1-31
, - * ? / L W C
Month
1-12 or JAN-DEC
, - * /
Day-of-Week
1-7 or SUN-SAT
, - * ? / L C #
Year (Optional)
empty, 1970-2099
, - * /
-
Examples:
Expressions
Meaning
0 0 12 * * ?
Starts daily at 12:00
0 15 10 ? * *
Starts daily at 10:15
0 15 10 * * ?
Starts daily at 10:15
0 15 10 * * ? *
Starts daily at 10:15
0 15 10 * * ? 2005
Starts daily at 10:15 during the year 2005
0 * 14 * * ?
Starts daily every minute beginning at 14:00 and ending at 14:59
0 0/5 14 * * ?
Starts daily every 5 minutes beginning at 14:00 and ending at 14:55
0 0/5 14,18 * * ?
Starts daily every 5 minutes beginning at 14:00 and ending at 14:55, AND every 5 minutes beginning at 18:00 and ending at 18:55
0 0-5 14 * * ?
Starts daily every minute beginning at 14:00 and ending at 14:05
0 10,44 14 ? 3 WED
Starts at 14:10 and at 14:44 every Wednesday in the month of March
0 15 10 ? * MON-FRI
Starts at 10:15 every Monday, Tuesday, Wednesday, Thursday and Friday
0 15 10 15 * ?
Starts at 10:15 on the 15th of every month
0 15 10 L * ?
Starts at 10:15 on the last day of every month
0 15 10 ? * 6L
Starts at 10:15 on the last Friday of every month
0 15 10 ? * 6L 2002-2005
Starts at 10:15 on the last Friday of every month in the years 2002, 2003, 2004 and 2005
0 15 10 ? * 6#3
Starts at 10:15 on the third Friday of every month
Further information on the subject of cron triggers can be found at: http://quartz.sourceforge.net/javadoc/org/quartz/CronTrigger.html
- Settings
-
Name
If several triggers are provided for, they can be named individually -
Active
Where there are several triggers, individual ones can be set to active / inactive without the job being affected. -
Delete
Activating the check box deletes the existing trigger (activate the check box by clicking it, then "Save" or "Save & Close") -
New trigger
A new trigger can be created here. Selection works the same way as for the schedule type -
Save, Save & Close
Clicking Save applies the change; the form could still be edited further. "Save & Close" saves the job and returns you to the job overview
Relevant menu items / actions
The following menu items in the Full System Administrator contain the relevant functions for managing and monitoring jobs:
- System > Jobs
- Monitoring > Active jobs
- Monitoring > Log entries
Monitoring / log entries
For the monitoring of jobs it is extremely important that the implementing job classes also log appropriately. This logging information is then usually written to the Webdesk database logs and can then be evaluated via the Monitoring > Log entries view.
Monitoring of jobs is made possible by the "Active jobs" view, where all active jobs can be seen at a glance. In addition, with the appropriate parameterisation, the course of the job can be traced with the help of the log entries. The parameterised log level (a defined status during the course of the job, such as error, warning, ...) shows whether a job ran without problems or whether particular problems occurred.
Recommended log settings
In principle the Loglevel of Jobs in the log
settings (Full System Administrator: System--> Log settings) should be set
at least to INFO. This ensures that all log information
qualified by the programmer as INFO or higher is written to the database log.
With batch processing, for example, this should usually log the number of
records processed. In any case errors (exceptions) are then definitely
logged!
If errors occur in the job, it can be worthwhile raising the logging level for
jobs to DEBUG!
Mail dispatch
If required, mail dispatch can also be configured in the jobs. The mail notification contains only the job log, and is sent to a defined person if a log entry with a specified level exists.
-
Activate mail notification
If the checkbox is ticked, mail notification is activated -
Log level
An e-mail is sent if a log entry with the specified level exists. Prioritisation of error messages - Fatal - only error messages are output
- Error - all error messages
- Warn
- Info
- Debug - outputs the most messages (e.g. "loading record with number xy...")
- All - all messages are output
-
Search criterion
If one of the log entries contains one of the specified words, a mail is sent. -
Send only a link to the logs
If the parameter is ticked, only a link to the log entries is sent. Otherwise all log details are sent. -
Address of the server
Enter the address of the server here. E.g. http://myserver.com/webdesk -
Persons to be informed
Entry of a valid e-mail address for notifications that the job has run, or that errors have occurred. - Add > add new e-mail addresses
- Delete > delete existing e-mail addresses
Best practice
If many jobs are used in one system, the following basic rules should be observed:
- A customer-specific naming convention should be adhered to
when assigning the job name, so that the purpose of the job can be grasped
quickly later on.
The job configuration should not have the same name as the job it is derived from. If the same name is entered, an error message occurs and the new job cannot be saved. - The description field should genuinely be used to describe the purpose of the job for the administrator (e.g. import of person master data from IF6020)
- If Webdesk runs in a cluster (more than one server), it makes sense to concentrate the jobs on one server. Running the same job in parallel (simultaneously) on different cluster nodes can lead to unpredictable results - in the worst case to database inconsistencies.
- Computationally intensive jobs should run in the evening or at night, so as not to place unnecessary load on the server hardware during "rush hour". With nightly jobs, however, the scheduling of the jobs must be coordinated with the database backup schedule in order to avoid problems!
- Sending log information by mail regularly makes it possible to react early to particular errors in the jobs.
Log entries in the Webdesk database should be deleted regularly (there is a dedicated job for this!), otherwise the Webdesk database can become too full, which can subsequently lead to performance problems.
Keine Kommentare vorhanden.