Diagnostics
With over 20 years' experience of developing portable network software protocols and
products, Metaswitch has developed a very rich set of diagnostics tools to help us,
our customers and our customers' customers quickly identify errors, reproduce them if
necessary and provide fixes. There are five main types of diagnostics included, each of which
can be enabled both at compile and run time.
-
Message tracing is an extremely powerful tool, described in more detail below.
It can trace every event at each component boundary.
-
Internal trace provides detailed logging of all processing, and allows source
filtering of the tracing.
-
FSM tracing identifies each FSM state / event transition.
-
There are multiple levels of asserts used liberally in the code.
-
Problem determination logging provides details of major system events that would
typically be integrated with a customer's event log tools.
A build with all diagnostics enabled provides an immense amount of diagnostic information.
Production builds typically utilize less tracing for efficiency, but will still usually
include the key asserts, event logging and message tracing.
Sample Trace Output
The links below show example output from our message tracing tool. This allows a
real-time capture of data flowing into and out of a set of Metaswitch network
software products, and between components within that system. The data has been
captured and post-processed off-line to provide a graphical output and a detailed
dump. This tool is extremely flexible and can be
- compiled in or out
- turned on and off at run-time
- dumped to a real file, RAM file or over telnet or FTP
- filtered at source to reduce the load on the target
- filtered when post-processing to simplify the output.
This tool helps Metaswitch engineers solve many problems without adding specific
diagnostics, including thorough reproduction of the problem from the logs. Even in
production systems, this tool allows our customers' field engineers to gather diagnostics.
Please click on the following links to view examples of the message tracing output
for our products. The upper screen shows the graphical flow of data. Each message
in this screen is broken out in detail on the lower screen. Click on a message in
the upper screen to see its detail in the lower screen.
More Information
For more information about the High Availability Framework and Metaswitch's
network software products and expertise contact
.