Application - Trace Log Structure
Overview
The QueryTest
methods return a “trace_log” array which describes a sequence
of trace log events generated by internal processing. The structure of these
trace log events is based on a common format used by all Applications.
This document describes the currently-recognised entry fields. Additional fields and event paths may be added in future. Your application should gracefully handle unrecognised trace log events.
Common Parameters
The following attributes are common to all trace log events:
Parameter | Type | Description |
---|---|---|
time
|
Array/TimeVal |
[Required] The time field is a two-element Array containing the epoch in seconds,
and an additional number of microseconds. This is the time at which the event log
was generated. The events in the event log should be in chronological order.
|
path
|
String |
[Required] The path string identifies the type of event. It is a string which
indicates what message or activity generated this event. Most paths support additional,
custom event log fields, as described below.
|
step
|
Integer | An optional, incrementing, zero-based integer which indicates sequential processing through a series of instructions. Event log entries generated by the TesterApp will typically include this value. |
op_idx
|
Integer | An optional, zero-based integer which indicates the instruction index being processed. This value may increment or decrement due to jumps/loops within the instruction list. Event log entries generated by the TesterApp will typically include this value. |
Internal Trace Events
Internal trace log events have the following parameters:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:trace.error , trace.warning , trace.notice , trace.debug , trace.dump , trace.spam .
|
msg
|
String | [Required] Human-readable log message. |
DB Message Events
A DB log event has the following parameters:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
sql
|
Object |
The "query" component of a DB query/response pair must have an sql parameter.This is the SQL with optional embedded ? bind variables.
|
args
|
Array |
The "query" component of a DB query/response pair may have an args parameter.This is an Array of arguments, either simple values, or Objects containing extended attributes. |
success
|
Integer |
The "response" component of a DB query/response pair may have a success parameter.This will be 1 if the query succeeded.
|
error
|
String |
The "response" component of a DB query/response pair may have an error parameter.This should be an error message if (and only if) the success parameter is not 1 .
|
rows
|
Array of Objects |
The "response" component of a DB query/response pair may have an rows parameter.This is the result set, an Array of returned Objects. |
DIAMETER Message Events
A DIAMETER log event is either the “query” event or the “response” event, and has the following parameters:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
diameter
|
Object | [Required] An object which is the decoded representation of the Diameter message. The structure of this object is beyond the scope of this documentation. |
FOX Message Events
An FOX log event has the following parameters:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
fox
|
Object | [Required] An object which is the decoded representation of the FOX message. The structure of this object is beyond the scope of this documentation. |
hex
|
String | [Required] A hex representation of the on-the-wire FOX-encoded message content. |
MML Message Events
An MML log event has the following parameters:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
mml
|
String | [Required] The MML string content transferred by this event. |
REST Message Events
A REST log event is associated with a REST-C-SENT
, REST-C-RESPONSE
, REST-S-REQUEST
, or REST-S-RESPONSE
message:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
http
|
String | [Required] The raw HTTP Response or Request bytes. |
rest
|
Object | [Required] An object holding REST-layer message attributes. |
method
|
String | Request-Only The HTTP Request method (which is the REST method). |
host
|
String | Request-Only The destination HTTP host to which the Request was sent. |
port
|
Integer | Request-Only The destination HTTP port to which the Request was sent. |
uri
|
String | Request-Only The URI for the REST/HTTP Request. |
code
|
Integer |
Response-Only Status code for the response, e.g. 200 .
|
content_type
|
String |
Optional Value of the Content-Type header if present.
|
content
|
Integer | Optional HTTP content body, if present. |
SOAP Message Events
A SOAP log event is associated with a SOAP-C-SENT, SOAP-C-RESPONSE, SOAP-S-REQUEST, or SOAP-S-RESPONSE message:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
http
|
String | [Required] The raw HTTP Response or Request bytes. |
soap
|
Object | [Required] An object holding SOAP-layer message attributes. |
.action
|
String |
Request-Only The fully-specified SOAP action for the SOAPAction HTTP header.
|
.message_name
|
String |
Request-Only The name of the SOAP method within the Body , excluding namespace.
|
.result_name
|
String | Result-Only The name of the result message received, excluding namespace. |
.args
|
Object | User parameters in the request message or result message. |
.message_namespace
|
Object | A container for the message namespace information. |
.uri
|
String | The message namespace URI, if one was used. |
.location
|
envelope /message
|
Location of the message or result namespace URI, if one was used. |
SMPP Message Events
A SMPP log event is associated with an SMPP-C-SENT, SMPP-C-RESPONSE, SMPP-S-REQUEST, or SMPP-S-RESPONSE message:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
smpp
|
Object | [Required] An object holding SMPP-layer message attributes. |
bytes
|
String | [Required] The on-the-wire SMPP packet including header. |
pdu
|
String | [Required] Name of the PDU. |
command_id
|
Integer | [Required] Numeric identifier for the PDU. |
command_status
|
Integer |
[Required] Status for the command. Always 0 for requests.
|
sequence_number
|
Integer | [Required] Sequence number for the request/response pair. |
fields
|
Object |
Optional Encoded message body fields. Never present for non-zero status responses. Fields present depend on the PDU type. |
TCAP Message Events
A TCAP log event has the following parameters:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
protocol
|
String |
An optional "hint" as to the contained protocol. Current supported values are:tcap or inap or map .
|
hex
|
String | [Required] A hex representation of the on-the-wire TCAP-encoded message content. |
annotated
|
Object |
If the trace log entry has been passed through the TCAP Annotation method, then
an annotated object may be present which describes the internal ASN.1 structure
of the TCAP and/or INAP contents of the hex bytes. The structure of this Object
is beyond the scope of this documentation.
|
XML Message Events
An XML log event has the following parameters:
Parameter | Type | Description |
---|---|---|
path
|
String |
[Required] One of the following:
|
xml
|
String | [Required] The XML string content transferred by this event. |