All error log and trace files except bvr.out, brm.out and bam.out contain a common message format. If the BVR component is configured to send kafka messages, a common JSON format is used (see later in this section)
<date> <time> <call> <component> <thread - thread_id> <trace_id> <text>
The message fields are
| Name | Description |
|---|---|
| date | date in day/month/year format (this is NOT locale specific) |
| time | time in locale timezone |
| call | call index of the call |
| component | internal component name within BVR, BRM or BAM |
| thread | name of thread generating this message |
| thread_id | index of thread generating this message |
| trace_id | trace id of the message |
| text | text of the message |
If a message is unrelated to a specific call the <call> will be ########### otherwise the <call> will contain a unique call index. If the call index is present it will be preceded with a short code (VC, RC or TC). These denote which aspect of the call the message relates to. The short codes are VC (voice/base call), RC (reco), and TC (TTS).
All ERROR, WARNING and INFO messages contain the word "ERROR", "WARNING" and "INFO" prepended to the <text>.
An example warning would look like
2015/10/28 10:02:43.647 ########### CONFIG [main - 1] [T000052] WARNING Invalid configuration parameter(s) in configuration file: {invalid_var=Invalid}
JSON Format
| Name | Description |
|---|---|
| accountID | The account ID of the owner of the application that is logging the message. May be absent in trace/error messages. |
| applicationID | The application ID of the application that is logging the message. May be absent in trace/error messages. |
| callIndex | The call index of the internal call representation in BVR. Useful for cross-referencing with trace for debugging and for distinguishing calls from each other. May be absent if the trace is not directly associated with a call. |
| content | The actual message being traced. |
| thread | The thread name that executed the trace statement. |
| timestamp | The local timestamp at which the trace point occurred. The format is consistent across trace files and kafka topics. |
| traceComponent | The area of trace that the message originated from. Trace components determine how much detail is traced. |
| traceID | The trace ID of the line of code being run in BVR. |
| traceLevel | The level of severity attached to the message. Messages below the level of detail that their trace component is set to are not traced. |
Below is an example of the format in action. Note that all data fields are strings and may be treated accordingly.
{
"accountID":"0x0",
"applicationID":"0x10000000",
"callIndex":"VC091431F700000001",
"content":"CALL - Summary - Call Duration: 3s. TTS Duration: 0s. ASR Duration: 0s",
"thread":"Call dispatcher 1 - 239",
"timestamp":"2018/08/16 17:00:22.904",
"traceComponent":"CALL",
"traceID":"[T003323]",
"traceLevel":"TRACE"
}