Piper Push Cache Documentation Download Samples Contact  

Log Record

Log records are JSON documents and are treated like any other record in that they are controlled by the record groups defined. If there is a group that places the log entry in the change log then the change log acts as a log file.

Log records can be extracted from the change log using the 'mill' application. The mill app extracts the log entries and drops the record identifier portion to leave just the actual JSON log object. The piper mill application has a variety of options for filtering and converting the JSON log files.

JSON log record objects have the following fields.

kind Always set to 'Log' indicatings the JSON is a log entry. The sole purpose is to make it easy to identify the JSON and make filtering more efficient.
level A fixnum corresponding to the severity of the log message. Values map to severity with 0 for a fatal, 1 for and error, 2 for warning, 3 for info, and 4 for debug.
when Seconds since epoch GMT. Up to 9 decimal places can be used for additional precision.
who A string identifying the application that produced the log message.
where A string indicating where the log entry was produced within an application. This could be simply the module name or the a file and line number. Piper entries show the log feature the error occurred in.
what A string describing the reason for the log message.
tid An optional string that can be used for tracking across set of processing steps on the same entity. 'tid' stands for Tracking Identifier. Use is similar to a package tracking-id in a delivery service. Piper log records include this when to associate a connection with the log entry.