Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Graphviz
digraph "Example: Server to Server Transfer with polling" {
rankdir=LR;
edge [color="#31CEF0"];

source_server [label="ServerA\nTransfer Source (FTP)"];
target_server  [label="ServerB\nTransfer Target (SFTP)"];
jobscheduler  [label="JobScheduler \n JADEYADE JITL job \n SSH JITL Job"];

source_server->target_server [label="2. file transfer"];
source_server->jobscheduler  [dir=both label="commands" color="grey"];
jobscheduler->source_server  [dir=right label="1. polling" color="blue"];
jobscheduler->target_server  [dir=both label="commands"  color="grey"];
jobscheduler->target_server  [dir=righ label="3. ssh command"  color="red"];
}

...

  • For such a file transfer and processing workflow JobScheduler has built-in JITL jobs, namely the YADE job and SSH job.
  • The YADE JITL Jobs be configured to transfer data from Server-to-Server without touchdown, more information about Server-to-Server transfer can be found here: Example for YADE Server-to-Server File Transfer.
  • JADE YADE has a built-in polling feature that can be configured by using polling parameters, i.e.
    • poll_interval: frequency of polling in seconds and
    • poll_timeout: maximum duration in seconds for polling.
  • The job chain can be configured by an order to run at a predefined time, to repeat execution or to be started manually.

...

  • This job is a YADE JITL job that is configured to poll a source host (via FTP) for files matching file_spec=^TEST*\.log$ for every 30 seconds during a maximum of 600 seconds.
  • The matching file(s) will be copied to the target host (SFTP). More information about JADE YADE JITL job configuration can be found here: JADE_JITL_ParametersJITL Jobs by topic.
Code Block
languagexml
titleJob jade_s2s_file_transfer
collapsetrue
<?xml version="1.0" encoding="ISO-8859-1"?>
<job  title="S2S transfer with polling (API Job for JobScheduler Advanced Data Exchange)" order="yes">
    <description >
        <include  file="jobs/jadeJob.xml"/>
    </description>

    <params >
        <param  name="file_spec" value="\.log$"/>
        <param  name="operation" value="copy"/>
        <param  name="verbose" value="9"/>
        <param  name="poll_interval" value="30"/>
        <param  name="poll_minfiles" value="1"/>
        <param  name="poll_timeout" value="600"/>
        <param  name="source_protocol" value="ftp"/>
        <param  name="source_host" value="mp.sos"/>
        <param  name="source_user" value="test"/>
        <param  name="source_password" value="super_secret"/>
        <param  name="source_dir" value="/outbound"/>
        <param  name="target_protocol" value="sftp"/>
        <param  name="target_host" value="homer.sos"/>
        <param  name="target_user" value="test"/>
        <param  name="target_password" value="super_secret"/>
        <param  name="target_ssh_auth_method" value="password"/>
        <param  name="target_dir" value="/home/test/inbound"/>
    </params>

    <script  language="java" java_class="sos.scheduler.jade.JadeJob"/>

    <run_time />
</job>

...