Company News Products Tools Support Documentation Q & A Contact Us

Documentation Home
Help! Errors
Help! False Positives
Help! Spam Leakage
Installation Guides
Features
Procedures
SNF Community
Software
Technology
Tools
Direct Support
Glossary
Q&A

SNFServer

Configuration

Automated Updates

Beginning with SNF version 3, a number of features have been added to the SNFMulti engine to support automated rulebase updates. The distribution files contain everything you need to set up automated rulebase downloads using these features. Of course, you can also build your own customized update mechanisms using the new features.

Update Ready Notification: UpdateReady.txt

The first feature is the UpdateReady.txt semaphore file. This file is created or overwritten in the SNF workspace whenever the rulebase file on our servers is newer than the one that is being used in the SNF engine. The file contains the compressed ISO timestamp for the newest rulebase file.

One way you could use this feature is to create a script that watches for this file. When your script discovers this file is present then it can download the new rulebase file and perform any other operations you wish to trigger when the update occurs. Once the update process is complete your script should delete the semaphore file. It's also a good idea (usually) to create some kind of locking mechanism to ensure that only one copy of your script runs at a time.

Back to Top

Update Script Launcher <update-script/>

The second feature is the <update-script/> mechanism. This feature allows you to configure the SNF engine to run a script via a system() call whenever the rulebase file on our servers is newer than the rulebase file running in the SNF engine. This script will be called repeatedly until the condition is resolved. Each iteration will be separated by a configurable guard time (3 minutes by default).

Back to Top

getRulebase Sample Scripts

The distribution files contain an appropriate sample script for automating rulebase updates. For Win* systems the script is getRulebase.cmd. For *nix systems the script is simply getRulebase.

Back to Top

Setting Up Automated Updates Step By Step

Normally SNF is installed so that the workspace and rulebase directories are the same. The getRulebase scripts provided assume that this is the case and that they will be living in the workspace directory along with the rulebase file. If your installation uses different paths then you will need to modify the scripts accordingly. Assuming everything is "normal" you should be able to get automated updates running following these steps:

  1. Verify that wget and gzip are available. If you are installing on a *nix system then it is very likely they are already present and available. If you are installing SNF on a Win* system then the distribution file will include the wget and gzip utilities as a convenience. These are open source utilities. The distribution file will also tell you where the included copies came from.

  2. Open your getRulebase script with your favorite text editor.

  3. Edit the variable assignments at the top of the script:
    • Put in the correct path.
    • Put in the correct license id.
    • Put in the correct authentication string.

  4. Save the file.

  5. Create an UpdateReady.txt file. It doesn't matter what is in the file or even if the file is empty. It simply must exist so that the getRulebase script can find it.

  6. Run the script. It should detect the UpdateReady.txt file and download the new rulebase from our servers. This is a good first step when setting up a new installation since the SNF engine will refuse to start if it doesn't find its rulebase file. A successful test-run of your getRulebase script not only verifies that your automated update script is working correctly but also gets you your rulebase file so you are ready run SNF.

  7. Open your configuration file (snf_engine.xml or snfmdplugin.xml) with your favorite editor.
    • Locate the <update-script...> tag

      <update-script on-off='off' call='getRulebase' guard-time='180'/>
    • Modify the tag so that the update-script feature is turned on and the full path to your getRulebase script is configured. For example, if you are installing SNF on a Win* system and your SNF workspace and rulebase paths are C:\SNF\ then you should edit this line to look like this:

      <update-script on-off='on' call='C:\SNF\getRulebase.cmd' guard-time='180'/>
  8. Save your configuration file. Now when the SNF engine is running it will automatically launch your update script within a minute or so of when a new rulebase file is ready. This is the best way to get new rulebase files without any time-lag or extra downloads.

Please email support@armresearch.com with any questions.

Back to Top

Disabling Update Notifications

To have your update notifications disabled, please send a note to support@armresearch.com. Please be sure to include your license id for account verification.

Back to Top