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" }