OPEN SOURCE - Job Scheduler - Solutions Using Standard Jobs

Job Scheduler
 
    Standard Jobs

  Standard jobs execute routine tasks and are included in the Job Scheduler distribution in the sos.scheduler.jar Java archive. The source code of these jobs is given below, the complete source code is available in the download area.

Standard jobs are included from the scheduler_automation_java.xml configuration file by entering <base file="scheduler_automation_java.xml"/> in the scheduler.xml file. Alternative implementations for Perl, JavaScript and VBScript can be selected during installation.

Logging and Clean Up

  • Job: Rotate Log

    Log rotation means that the Job Scheduler creates a new log file and that older log files are compressed with gzip. This job rotates the log file of the Job Scheduler - creating a new log file after a given period (day, week). Further infos on log files can be found in the documentation of log files.

    Show Job Documentation      Show Job Source Code

  • Job: Cleanup History

    This job shrinks the logs in the Job Scheduler database. After a given age individual rows of log entries in the database are removed, should the log level of these entries exceed a given value.

    Show Job Documentation      Show Job Source Code

  • Job: Cleanup Files

    This job removes temporary files older than a specified value from a configurable directory.

    Show Job Documentation      Show Job Source Code



Sanity Checking



Mail Forwarding

  • Job: Dequeue Mail

    If the Job Scheduler fails to send mails, for example, because the mail server is down, then the unsent mails are stored in a queue directory. This job tries to send mails that have previously been stored in this directory.

    By default, mails are sent by the main Job Scheduler task. Should you encounter frequent problems with your mail server, then this could slow down this main task as it repeatedly tries to contact your mail server, and might lead to TCP connection timeout errors.

    In this situation you could use this job to configure the Job Scheduler to send all mails asynchronously: adding the mail_queue_only=yes entry to the ./config/factory.ini configuration file would cause the Job Scheduler to store all mails in a directory specified using the mail_queue_dir setting. Sending e-mail asynchronously with this job will not influence the performance of the Job Scheduler in case of mail server timeouts.

    To have this job start immediately whenever e-mails are to be be sent, you should add the <start_when_directory_changed directory="./mail" regex="sos.*"/> directory monitoring option to the job configuration, where ./mail is your queue directory.

    Show Job Documentation      Show Job Source Code



Job and Order Execution in Remote Job Schedulers

  • Job: Remote Job or Order Execution

    This job implements an interface to execute jobs, orders and XML commands using a remote Job Scheduler. The appropriate XML elements are generated and sent to the remote Job Scheduler via TCP or UDP.

    This job can be used standalone or for orders within a job chain. It could be used for example as a successor job to initiate subsequent processing steps on different Job Scheduler instances.

    Show Job Documentation      Show Job Source Code



Scheduler Management

  • Job: Check Slaves

    Multiple Job Scheduler Slaves can be checked by a Job Scheduler Master. This job implements the monitoring of Job Scheduler Slaves.

    Show Job Documentation      Show Job Source Code

  • Job: Restart Job Scheduler

    The Job Scheduler can be restarted manually or automatically at a predefined time. Whilst the Job Scheduler itself does not need regular restarts, it can be necessary to carry out regular restarts with certain jobs running on Windows, in order to ensure that system resources such as TCP handles are correctly returned to the operating system.

    Show Job Documentation      Show Job Source Code



Web Service Client

  • Job: Web Service Client

    This job implements a Web Service client that posts files to a Web Service. You simply write your SOAP request in a file and have the Job Scheduler post it to the Web Service. The Web Service response is then automatically written to a appropriate output file.

    This job can be used standalone or for orders within a job chain. As this job is able to process directories with multiple files it could be used for load-testing of Web Services.

    Show Job Documentation      Show Job Source Code



FTP Transfer

  • Job: Send Files by FTP

    This job transfers files via FTP and can be used either as a standalone solution or triggered by orders. For use of SFTP see the respective solution section.

    Features supported by this job:
    • Use of wildcards in regular expressions
    • Check for existing files
    • Check the size of the transferred files
    • Rename files after transfer to make them appear atomically
    • Compress files in a gzip compatible format
    • Remove source files after transfer

    Show Job Documentation      Show Job Source Code

  • Job: Receive Files by FTP

    This job receives files via FTP and can be used either as a standalone solution or triggered by orders. For use of SFTP see the respective solution section.

    Features supported by this job:
    • Use of wildcards in regular expressions
    • Check for existing files
    • Check the size of the transferred files
    • Rename files after transfer to make them appear atomically
    • Repeat transfer of files and compare file sizes in order to ensure that the source files had been completed before transfer
    • Remove source files after transfer

    Show Job Documentation      Show Job Source Code



File Operations

File Operations include commonly used operations such as copying, renaming/moving and removing of files. These File Operations are based on Java so they are available for all supported platforms of the Job Scheduler. In comparison with functions such as operating system-specific copy, cp, move, mv, del and rm, which behave differently on different operating systems, the handling and behavior of the File Operations is identical on all operating systems.

File operations are often used in job chains that e.g. receive files by FTP, rename the files and transfer them to different locations.

  • Job: Copy Files

    This job copies files and can be used as a standalone solution or triggered by orders.

    Features supported by this job:
    • Use of wildcards in regular expressions
    • Check for existing files
    • Recurse subdirectories
    • Replace parts of a file name by regular expression matches
    • Use of variables for automatic state dependant substitution such as inserting the current date into the filename

    Show Job Documentation      Show Job Source Code

  • Job: Rename Files

    This job renames/moves files and can be used as a standalone solution or triggered by orders.

    Features supported by this job:
    • Use of wildcards in regular expressions
    • Check for existing files
    • Recurse subdirectories
    • Replace parts of a file name by regular expression matches
    • Use of variables for automatic state dependant substitution such as inserting the current date into the filename

    Show Job Documentation      Show Job Source Code

  • Job: Remove Files

    This job removes files and can be used as a standalone solution or triggered by orders.

    Features supported by this job:
    • Use of wildcards in regular expressions
    • Check for existing files
    • Recurse subdirectories
    • Directories are not to be removed

    Show Job Documentation      Show Job Source Code

  • Job: Check Existing File

    This job checks for the existence of a file, a directory or for specific files inside a directory and can be used as a standalone solution or triggered by orders.

    Features supported by this job:
    • Use of wildcards in regular expressions

    Show Job Documentation      Show Job Source Code

  • Job: Check Non-Existing File

    This job checks for the absence of a file, a directory or for specific files inside a directory and can be used as a standalone solution or triggered by orders.

    Features supported by this job:
    • Use of wildcards in regular expressions

    Show Job Documentation      Show Job Source Code

 
 
 
 
  Office Automation - Document Delivery - Job Scheduling - Systems Integration - Output Management - Enterprise Application Integration - Connectivity