Paper No 18: Log Analysis Program on 1906A
R E Thomas
27 November 1975
Macro
:FR80ACCTS.FR80AC (in :GSIN11)
Parameters
*CR filename
If absent, the tape
FR80LOG(NONSTANDARD)
is loaded. This is assumed to be in III Dump format, and to contain only Log files. The raw data is copied to a file
FR80LOGY
as the tape is processed.
If the parameter is present, the specified file is assumed to have been produced previously by the reading of a tape,
as a copy of log raw data. No tape is requested and no raw data copy is produced.
*LP filename
filename is the name of the file in which the accounts data is to be saved.
This should have the form:
MMMDD-YY
where MMM is the month as 3 letters, and DD, YY define the day and year respectively (for example, NOV14-75) of the first data record in the file.
Running the Job
The macro may be issued either in MOP context , or run as background. If
it is issued under MOP, the LP parameter must be present, and a background job is issued only if it is.
If run as a background job, and a *LP parameter is absent, then a file
TEMPDDMMMYY
is created (where DDMMM and YY have the meanings assigned above).
However, this date will be the current date, not the date of the first record in file.
For correct accounting, such a file should be renamed as soon as possible.
A listing output will be sent to file FR80LIST and printed. The accounts file and monitor will only be printed if an error occurs.
Examples
FR80AC *LPNOV14-75
RJ MYJOB,FR80AC,PARAM(*LPNOV14-75),JD(JT40SECS)
Data Verification
The program is mainly written in FORTRAN, including the character handling routines, COPY and COMP.
Although this is somewhat inefficient, the whole program is very small.
The data records are checked for accuracy. Any unusual occurrence causes the record to be printed
together with some form of message. Processing will usually continue. A list of the checks
follows (error messages are generated by ignored records, except for blank lines):
- All data before a START record is ignored and not listed.
- Blank records are ignored and not listed.
- The first 10 characters in the record are checked for digits. The record is ignored if non-digit detected.
- The character count must be at least 10.
- The sequence number must be correct.
- If a GSTART is followed by end of file, a message is output but the record is retained (with zero time and frames).
- Any username must be less than 9 characters and be terminated by comma.
- The camera number must be in the range O - 8.
- For GSTART there must be 5 arguments.
- Any number read may be negative, but must terminate with comma or end of record.
- A second GSTART following a previous one will cause the previous data to be lost.
- The program halts if more than 100 users are recorded in a file, or if more than 1200 characters are required for jobnames.
The system must be recompiled with larger arrays.
- A LOGJOB must have 7 arguments.
- The camera name specified in LOGJOB must be known.
- A NOCHARGE record must refer to a previously-run job in the same log file.
- A LOGOUT or ABEND which does not follow a GSTART is ignored.
- The time must not go backwards.
- A message is printed if the date charges after a GSTART record. The previous date is retained for that record.
As yet, there is no means of setting 'External Processing'.
- A message is printed if, after correctly processing a record, the character count indicates more. The record is accepted.
- A message is output wherever an illegal character is read from tape giving character code and record number. The character is replaced by ? .
- START TAPE records are defined only for POOL tapes, as follows:
START/POOL, tape number
other START TAPE records are listed but ignored
- END TAPE records will end the previously entered START which, currently, should be a POOL tape.
- The number of tapes will be recorded as 0 for SPOOL and 1 for others.