Log File Format

Each record begins with a timestamp followed by a record type. The content of the record varies and is dependent on the record type. The general format of each log record is:

timeStamp recordType field1 field2 field3…

where:

timeStamp The UTC time when this record was created. The format is: yyyyMMddhhmmss. This format can be sorted. Note that the loggerBegin record contains a timeLocal local time field, and this may be used to determine the UTC offset.
recordType A single character that encodes the record type. See the table below.
Fields One or more space-separated, variable length fields.

The type and order of the fields varies with recordType.

If a field contains spaces, the field will be surrounded by double quotes.

An embedded double quote character is coded with two consecutive double quotes.

A single dash replaces any field with an undefined or unknown value.

Numeric values have leading and trailing insignificant zeroes suppressed.

The following table lists the record types, the log level of that type, and the values that each record of the specified type contains. The value codes are defined below.

Code Level Record Type Fields
L 1 loggerBegin versionBIS, versionLog, timeLocal
S 2 sessionBegin idSession, countUses, ipUA, idUA, typeIdUA
V 3 serviceBegin idSession, countUses, ipUA, idUA, typeIdUA, idService, nameService
R 4 serviceRequest idSession, countUses, ipUA, idUA, typeIdUA, idService, lengthRequest
r 4 serviceResponse idSession, countUses, ipUA, idUA, typeIdUA, idService, lengthResponse
v 3 serviceEnd idSession, countUses, ipUA, idUA, typeIdUA, idService, tallyRequests, tallyLengthReq, tallyLengthResp, timeCPU, histIO
s 2 sessionEnd idSession, countUses, ipUA, idUA, typeIdUA, tallyRequests, tallyLengthReq, tallyLengthResp, timeCPU, histIO
l 1 loggerEnd tallyRequests, tallyLengthReq, tallyLengthResp, timeCPU, histIO
Z - licenseInfo idBaseLicense, idSerialNumber, nUseCount, strLicenseKey

where:

Code A character that indicates the record type.
Record Type The type of record. Each type is discussed in the table below.
Level The level of this record type. Future versions of BIS will allow logging to be restricted by level.
Fields The fields that appear in this type of record. The fields are described in the table below.

The record types are nested: there will normally be a matching sessionEnd record for each sessionBegin record. The licenseInfo record is an exception: this record will occur by itself. For BIS/IIS, the licenseInfo record is written after BIS is loaded and the first service is started. Because much of the BIS subsystem is unloaded after a period of idle time and automatically reloaded on demand, this record may occur more than once in a given log file.