PICS Alarm Monitoring Suite

Three custom applications were created to aid USEC/PGDP engineers in monitoring (and tracking) alarm transitions. The tracking itself is performed by the AlarMon application, which instance of which tracks a given group of points. A point group editor (gEdit) was created to facilitate the creation and maintenance of point group files.  Lastly, a program that automatically transfers log files (shifty) from PICS to a central server was also created.

AlarMon - Alarm Monitoring/Tracking

Each day (at the Log Change Time specified in the INI file (00:00 through 23:59)) the open log(s) will be closed and moved to the C:\PICS\stage folder.

The command line for AlarMon is:

AlarMon [-config=myconfig.ini] -log=basename groupfile.pgf

If the -config= parameter is omitted, then the program will look for AlarMon.ini. If AlarMon.ini doesn't exist, then my personal favorites will be used (the program defaults).

The -log= parameter specifies the BASE name for the log files. While being recorded, you will see files named basename.alm in the C:\PICS\log folder. When a new log is opened, the old one is moved to the stage (as described above) and renamed basename-YYYYMMDD.log.

The group file may be in the current folder (but is generally expected to be in the C:\PICS\groups folder. The format of a group file is expected to be that created by gEdit.

You should be able to run as many instances of this program as you need. So far I've tested with up to three at a time. Just remember that the BASENAME used for each log MUST be unique (for hopefully obvious reasons).

gEdit - PICS Point Group Editor

(Click here for screen shots)

The default mask mode should be exactly what you're used to from the MODCOMP: Any letter provided must match exactly and asterisks (*) are used as placeholders for "don't care" characters. Trailing asterisks (those placed at the END of a string) will also match NOTHING (e.g. "C31.U1.P********" will match any point from C-331, Unit 1 whose name begins with 'P', of any length; whereas "C31.U1.P***" will only match names up to FOUR characters long that begin with 'P').

The 'regexp' mode uses a complete implementation of the regular expression parser from unix that is the root of almost all regular expression handling today. It is extremely powerful (but nowhere near as simple to learn as yours). For example, you could select all of the vibrations from the six-cell buildings, even numbered units, cells, and stages like this:

^C3[37].U[246].V[24][24]$

The string above would match C33 and C37, Units 2, 4, & 6, points V22, V24, V42, and V44. On the other hand the string:

I2

would match any point containing "I2" anywhere within the string.

You can even have multiple, nearly unrelated match strings separated with the vertical bar character and if any one of them matches, the point would be included. To find out more, select the mode and press the Explain button, then go find a book on regular expressions!

shifty - Automatic File Transfer

The program checks the configured stage folder for new files every five minutes. This allows logs that are closed at different times of day to be available within five minutes of closure. Files that are transferred successfully will be moved to configured sent folder from which they may be safely deleted.

    [FTP Settings]
    Server=0.0.0.0
    Path=/
    User Name=username
    Password=password
    Transit Name=picsxfer.dat

    [Local Settings]
    Stage Name=stage
    Sent Name=sent

The less than obvious settings are:

Path specifies the path on the FTP SERVER where the uploaded files are to be stored. If you leave the default (/) then the files are stored in the account's base folder.

Transit Name identifies a filename to be used for logs WHILE BEING TRANSFERRED. If this file persists on your server, then there is probably a problem with file transfers not completing. When a transfer finishes normally, this file will be renamed to match the original source file.

The Stage and Sent names identify the folder to monitor (stage) and the repository for successfully transmitted files (sent). The sent folder MUST be a subdirectory of the stage (and the program will attempt to create it if it does not exist). The stage folder is expected to be a subdirectory of the local PICS Root folder and again, will be created if not found.