Obtaining logs from a VXs system

Scope

Telos VXs phone systems run on user supplied servers running Ubuntu Server operating system. VXs software itself runs within Docker containers on the Ubuntu server host. This overall architecture changes how we acquire logging insights from the VXs applications. We take advantage of the Linux operating systems built-in logging system "Journalctl" which is part of Systemd to access logs from VXs. Journalctl itself provides filtering options, alongside with GREP we can quickly find logging to relevant VXs modules

The user must have SSH ( or local console access to the Ubuntu Server.

Examples in how to use Journalctl to retrieve VXs related log messages

If multiple VXs containers are running, logging will contain messages from all VXs containers, without unique ID's

Example 1: Show the last 5000 events for VXs call_control and vx_dsp_engine at log level debug with

journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control + _CMDLINE=vx_dsp_engine

Example 2: Extra filtering to only show call_control logging messages by sub type

CPSIP: journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control | grep CPSIP

LWCP: journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control | grep LWCP

AIF: journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control | grep AIF

SIP: journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control | grep SIP

Config: journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control | grep config

HTTPServer: journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control | grep HTTPServer

Example 3: Show logging since January 1st, 2022 (yyyy-dd-mm)

journalctl -S "2022-1-20" -p debug -o short-precise _CMDLINE=call_control + _CMDLINE=vx_dsp_engine

Example 4: Show logging from the past 8 hours

journalctl -S "8 hours ago" -p debug -o short-precise _CMDLINE=call_control + _CMDLINE=vx_dsp_engine

Example 5: Save log output to a file in the user home directory

journalctl -n 5000 -p debug -o short-precise _CMDLINE=call_control + _CMDLINE=vx_dsp_engine > ~/VXslast500.log

Example 5, could also include filtering used in Example 4, 3, 2 and 1 to further refine what gets saved

Example 6: Watch output of logging in real time

journalctl -f -p debug -o short-precise _CMDLINE=call_control + _CMDLINE=vx_dsp_engine

As of writing this helpdoc, VXs utilizes PTP4L for syncing the host to PTP time. PTP4L runs within its own docker container. Rolling PTP sync stats can be viewed in a similar way

Example 7: Observe PTP4L stats for last 5000 lines

journalctl -n 5000 -p debug -o short-precise | grep ptp4l

Retrieving saved log files to send to support

If using Example 4 and saving the log to a file, the log file itself will get saved to the user's home directory on the Ubuntu Server OS

Using an application like WinSCP - the user can connect to the file system of the Ubuntu Server and copy the log file to their own PC.

Let us know how we can help

If you have further questions on this topic or have ideas about how we can improve this document, please contact us.