logFile Information

April 21, 2006

Table of Contents

Location of LogFiles
Logging Preferences
Setting Up Logging for Command Line Programs

Location of LogFiles

Logfiles are stored and automatically purged in the logfiles directory.  This location is release/data/logfiles, typically /awips/GFESuite/primary/data/logfiles on the dx AWIPS-baselined systems, or /awips/GFESuite/data/logfiles on the lx AWIPS-baselined systems. Under this directory is a date/time stamped directory in the form of yyyymmdd, such as 20020327 for March 27, 2002.  Within each date's directory are the logging files.

The naming of each individual log file is dependent upon the start up script for that application.  The following table shows the program name and log filename. The collective field indicates whether subsequent executions of the program go into individual files (non-collective) or a single file (collective).
 
 
Program Name Logging File Name Collective
configureTextProducts configureTextProducts%P%H%T no
coordConversion coordConversion%P%H%T no
dumpAT dumpAT%P%H%T no
getNotify getNotify%P%H%T no
ghETN
ghETN%P%H%T  (Note: by default, no logging occurs for this program)
no
ifpAG ifpAG%P%H%T no
ifpBreakAllLocks ifpBreakAllLocks%P%H%T no
ifpDFC ifpDFC%P%H%T no
ifpDFCArchive (archiveObs, archivePointFcst)
dfc-archiveObs_%H, dfc-archivePointFcst_%H yes
ifpIMAGE ifpIMAGE_%H yes
ifpInit ifpInit%P%H%T, when run from the command line, moduleNameInit_%H when run automatically from the ifpServer no (command line), yes (from ifpServer)
ifpnetCDF ifpnetCDF_%H yes
ingestAT
ingestAT_%H
yes
iscExtract iscExtract_%H yes
iscInject ---none--- n/a
iscMosaic iscMosaic_%H yes
gfe (runGFE) gfe%P%H%T no
ghgMonitor
ghgMonitor%P%H%T no
ifpServer (runIFPServer) ifpServer%P%H%T no
ifpServerStats ifpServerStats%P%H%T no
ifpServerText ifpServerText%P%H%T no
makeD2DFile
makeD2DFile%P%H%T no
moveGFEData moveGFEData%P%H%T no
publishGFE publishGFE%P%H%T no
purgeAllGrids
purgeAllGrids%P%H%T
no
requestAT
requestAT_%H
yes
runIFPText ifpText%P%H%T no
runProcedure procedure%P%H%T no
sendAT
sendAT_%H
yes
sendGfeMessage
sendGfeMessage%P%H%T
no
VTECDecoder
VTECDecoder_%H
yes

The "% modifiers" are replaced with actual values depending upon the state of the system.  Here is a complete list of modifiers:
 
Modifier Meaning
%d display being used, i.e., contents of the DISPLAY environment variable
%D Year Month Day date string. Identical to %Y%m%d for strftime or yymmdd format
%T Hour Minute Second time string. Identical to "H%M%S for strftime of hhmmss format
%P Process identification number
%N Process name
%L Logging directory (top-level) as defined by LOG_DIR environment variable
%H Hostname of machine


Logging Preferences

Logging uses the AWIPS LogStream facility.  Environment variables are used to define the location/handling of the logfiles.  These environment variables are automatically set for you with many of the GFESuite set of programs.  Here is a summary: GFESuite is set up with various logging preferences files.  These are located in release/etc/BASE/logPref/*.logPref, typically /awips/GFESuite/primary/etc/BASE/logPref/*.logPref on the AWIPS-baselined systems.

The following table lists the logPref files and the programs that use them.  Note that the program names and the script names which are used to run the program may be different (for example, ifpServer is the program name, but runIFPServer is the script that is used to start it):
 
 
Logging Preference File Programs Using the File
archiveObs.logPref ifpDFCArchive (archiveObs)
archivePointFcst.logPref ifpDFCArchive (archivePointFcst)
configureTextProducts.logPref configureTextProducts
coordConversion.logPref coordConversion
dumpAT.logPref dumpAT
getNotify.logPref getNotify
gfe.logPref runGFE (GFE)
ghETN.logPref
ghETN
ghgMonitor.logPref
ghgMonitor
ifpAG.logPref
ifpAG
ifpBreakAllLocks.logPref
ifpBreakAllLocks
ifpDFC.logPref
ifpDFC
ifpIMAGE.logPref
ifpIMAGE
ifpInit.logPref
ifpInit
ifpnetCDF.logPref
ifpnetCDF
ifpServer.logPref
runIFPServer (ifpServer)
ifpServerStats.logPref
ifpServerStats
ifpServerText.logPref
ifpServerText
ingestAT.logPref
ingestAT
iscExtract.logPref
iscExtract
iscMosaic.logPref
iscMosaic
makeD2DFile.logPref
makeD2DFile
moveGFEData.logPref
moveGFEData
publishGFE.logPref
publishGFE
purgeAllGrids.logPref
purgeAllGrids
requestAT.logPref
requestAT
runIFPText.logPref
runIFPText
runProcedure.logPref
runProcedure
sendAT.logPref
sendAT
sendGfeMessage.logPref
sendGfeMessage
setupTextEA.logPref
setupTextEA
VTECDecoder.logPref
VTECDecoder

Here is an example of a logging preferences file:

#Process        Src     Sink    Category
#               File
#-----------------------------------------
all             all     file       all = on
all             all     file       debug = off
all             all     file       verbose = off
all             all     file       use = off
all             all     tty        all = off  # nothing goes to a terminal
all             all     collective all = on
all             all     collective debug = off
all             all     collective verbose = off

# recommended to see hourly statistics
all   ifpServer.C file verbose = on
all   RunInit.C file verbose = on
all   all       all    use = off

# Prefixes
all   timeStamp = on         # time stamps on
#all   processName = off     # process name off
#all   processID = on         # process id off
all   fileName = on         # filenames wanted
all   lineNo = on           # line numbers wanted

The first section of the file is a list of process, source file, sinks (file, tty, collective), and a category (all, debug, verbose, event, use, problem, fatal) with an "on" or "off" appended.  The file is parsed sequentially, thus turning a category off first and then turning it back on in a later line will result with the category being on.

Logging can be enabled/disabled on a per-process basis and filename basis.

The second section defines prefixes.  The format of the log files are controlled through this set of definitions.  The time stamps, process name and id, filename and line number may all be enabled or disabled through the logging preferences file.

Be careful if changing the logging preferences files.  These files are not supported through the BASE, SITE, USER concept and changes will be overwritten with the next GFESuite upgrade.


Setting up Logging for Command Line Programs

If you run a program that doesn't use one of the GFESuite-supplied startup scripts, the logging will not be enabled (by default) and hence you will not be able to tell if problems occurred during the execution of the program.

You can set up logging for command line programs by setting the following environment variables: