Data Warehouse - apgupd

apgupd is the mechanism through which client instances communicate with the IFI primary instance and the only method of obtaining new or updated content for the client PostgreSQL database. It is installed as part of the CLAIMS Direct repository. Please see the Client Tools Installation Instructions for more information about how to install this tool. You will need authentication credentials from IFI CLAIMS in order to communicate with the IFI primary server.

Important: Logging is available in /var/log/alexandria/alexandria.log. It is important to monitor log files regularly in case a failure should occur. Please contact to report any issues.


	apgupd [ Options ... ]

  apgupd Options
  --url=URL     URL for update methods
  --user=s       User name  default: test (will fail)
  --password=s   Password   default: test (will fail)
  --proxy=s      URL of proxy server e.g.,
  --noindex      Don't queue up indexing
  --api          Load citation and priority lookup tables
  --force        Force the update even if it is redundant
  --tmp=dir      Specify temporary file storage. default=/tmp/
  --pgdbname=s   Specify configuration database entry
                  default: alexandria
  --facility=s   Logging facility (default=apgupd)
  --noclean      Do not remove temporary processing directory. Default is to clean.
                   NOTE: this option should only be used to debug errors
  --apgupexe=s   Specify non-default apgup script (used for debugging)
                   Default is apgup as found in PATH environment
  Process Options
  --nodaemon    Don't put process into background. Default is to daemonize
  --once        Only process one update
  --interval=i  n-seconds between probing for new updates. Default=5
                Exit on error. This will terminate the process in
                case of an error at any stage of the update

  --help        Print this usage and exit

Detailed Description of the Arguments

General Options

ArgumentDescriptionDefault ValueVersion Available
--urlUsed for support. The web service url. This argument should only be used when specified by CLAIMS Direct support staff.
--userYour CLAIMS Direct user nametest
--passwordYour CLAIMS Direct passwordtest
--proxy Where applicable, the URL of a proxy serverN/A2.4
--proxy-user The user name for proxy authenticationN/A2.4
--proxy-password The user password for proxy authenticationN/A2.4
--noindexWhen specified, the indexing queue will not be populated.N/A
--api When specified, populate the cdws citation and priority tables (alexandria-sql-patch-alpa-3636-20191101 required)N/A2.5
--forceIf a load-id has been previously processed, default behavior is to skip it. If specified, the load is processed regardless.N/A
--tmpThe temporary processing location. The update packages will be downloaded to this area, unpacked, and loaded. Generally, 10-20GB is sufficient./tmp
--pgdbnameThe name of the configuration database entry as specified in /etc/alexandria.xmlalexandria
--facility Logging facility. Changing from the default value assumes a logger has been defined in /etc/alexandria-log.confapgupd
--nocleanUsed for debugging. When specified, the downloaded package and temporary directory will not be removed after processing.N/A
--apgupexeUsed for debugging. When specified, an alternative update process will be called to load and merge the package.apgup

Process Options

ArgumentDescriptionDefault ValueVersion Available
--nodaemonWhen specified, apgupd will run in the foreground. ctrl+c can be used to cancel it.N/A
--once Only process one updateN/A
--intervalThe interval (in seconds) between subsequent update checks.5
--die-on-errorWhen specified, any error at any stage of the update process will cause apgupd to exit.N/A

Enabling, Starting and Stopping the Daemon

systemctl enable apgupd.service
systemctl start apgupd.service
systemctl stop apgupd.service

Pausing/Resuming/Stopping up to v2.5

apgupd explicitly handles 3 signals: USR1USR2INT.

# Pause the daemon
kill -s USR1 <pid>
# Resume processing
kill -s USR2 <pid>
# Stop daemon completely
kill -s INT <pid>