Design Document for AUDITSCH

AUDITSCH

AUTHOR: Tim Baltzer

Functional Summary:

AUDITSCH audits the AVHRR master schedule in order to keep it up-to-date.

Comments:

AUDITSCH will typically be called by a daemon in production.

Background:

AVHRR scheduling at EDC has historically been performed on the VAXH (VMS platform). However, this functionality is being moved to edcsgs4 (Unix platform) for several reasons: (1) DOMSAT scenes will now be acquired via ftp to the NOAA server or from the local DOMSAT satellite dish, (2) since LAS/ADAPS is no longer supported on VMS platforms it is very difficult to rebuild parts of the scheduling software on the VAX, (3) it is difficult to rebuild a Y2K compliant version of the software on the VAX because of the reason sited in (2), and (4) the software on the VAX is slow and contains known bugs.

Requirements:

- "Delete" checking required:
  - Read schedule, look for all scenes regardless of their status (Miss,
    Disk, etc.), determine if N time past current time (48 hours for
    example).  If the current time is N time past the scene acquisition
    time and the scene is marked:
    "Disk": Generate schedule directive to delete it
    "None": Generate schedule directive to delete it
    "Pend": or
    "Miss": Generate schedule directive to delete it, also write message
            to log file to signify this scene as never acquired.
- "Update" checking required:
  - Search schedule for "Pend" SFL scenes.  If in ingest log generate
    an update schedule directive "update.sch" to change scene status
    from "Pend" to "Disk".  This is the mechanism wherein the
    schedule on edcsgs4 is updated when a live SFL scene is acquired.
    Must have a "list" of ceosid's to check for here (SFL always, if
    using local DOMSAT dish then add NOA and NGC to list).
  - Look for all scenes with "Pend" status.  If N hours past acquisition
    time, mark as "Miss".  This "Miss" status reflects a truely missed
    scene, one that can no longer be acquired.
  - Scenes in the schedule marked as "None" will remain in the schedule
    as "None" until they are deleted (unscheduled scenes within the
    schedule).

Scope/Limitations:

UPDATESCH, NOAAFTP (if acquiring DOMSAT scenes from the NOAA server),
and the acquisition software on the VAXH must be executing
concurrently with AUDITSCH in order for it to function properly.

Overall design:

Algorithm:


Module Design(s):

AUDITSCH:

Audit the master schedule file to determine if any processing is required.

PARAMETERS:

CEOSIDS
CEOS id's. CEOS id's to consider when examining the logs to determine when scenes have been locally acquired. This will usually be set to "SFL" only (live acquisitions). However, if DOMSAT scenes are being acquired via satellite dish as opposed to FTP, then "NOA" and "NGC" should be specified as well.

TIME_DELETE
Delete time. Time (in hours from current time) to wait before deleting a scene from the master schedule.

TIME_MISSED
Missed time. Time (in hours from current time) to wait before marking a scene as missed in the master schedule.

TIME_ACQUIRE
Acquire time. Time (in minutes from current time) to wait before checking if a local acquisition has occurred.

LOGFILE
Log file. Name of the log file to write all processing messages to. If defaulted, "auditsch" within the ADAPSLOG directory will be used. LOGFILE will have a ";log" extension.


Module Design(s):

AUDITSCH_DAEMON:

AUDITSCH_DAEMON periodically calls AUDITSCH in a continuous loop to audit the master schedule file.

PARAMETERS:

CEOSIDS
CEOS id's. CEOS id's to consider when examining the logs to determine when scenes have been locally acquired. This will usually be set to "SFL" only (live acquisitions). However, if DOMSAT scenes are being acquired via satellite dish as opposed to FTP, then "NOA" and "NGC" should be specified as well.

TIME_DELETE
Delete time. Time (in hours from current time) to wait before deleting a scene from the master schedule.

TIME_MISSED
Missed time. Time (in hours from current time) to wait before marking a scene as missed in the master schedule.

TIME_ACQUIRE
Acquire time. Time (in minutes from current time) to wait before checking if a local acquisition has occurred.

LOGFILE
Log file. Name of the log file to write all processing messages to. If defaulted, "auditsch" within the ADAPSLOG directory will be used. LOGFILE will have a ";log" extension.

Testing criteria:

- Test to make sure delete directive file is correctly generated.
- Test to make sure modify directive file is correctly generated
  (to change scene status to "missed").
- Test to make sure modify directive file is correctly generated
  (to change scene status to "acquired").
- Test with (1) CEOSID = SFL and (2) CEOSID = SFL, NOA, NGC