Understanding the support bundle for Linux PCoIP agents
Support bundles can be generated on a Linux agent by running the pcoip-support-bundler(1)
command. The command must be run as root and will generate a gzipped tar file in /tmp
, outputting the name of the generated file (something like supportbundle-agent-{date}.tar.gz
). A man page is also shipped that provides some information about the support bundler, it can be viewed by running man pcoip-support-bundler
.
What's in it?
At the top level there will be three items:
- a folder named "files", containing files captured from the file system that
pcoip-support-bundler
was run on - a folder named "out", containing the output of commands run by
pcoip-support-bundler
- a file named "support-bundler.out", containing output captured from
pcoip-support-bundler
Captured Files
/run/pcoip-agent
- this folder contains private runtime files for the agent: the xauthority cookie used by the X server, mailbox sockets, the launcher socket and the authentication proxy socket/var/log/pcoip-agent
- this folder contains all of the agent's log files/var/crash/pcoip-agent
- this folder may contain core dumps if any of the PCoIP processes crash/var/crash/*pcoip*
- this will capture any apport processed PCoIP related crash dumps (Ubuntu only)/var/log/syslog*
- this captures all files in/var/log
containing "syslog" in the name/var/log/messages*
- this captures all "messages" files in/var/log
/var/log/auth.log
- this captures the auth log, which can be helpful debugging PAM related issues/var/log/Xorg*
- this captures all of the Xorg logs/etc/pcoip-agent
- this folder contains the configuration file for the agent and potentially any certificates (if configured)/etc/X11/default-display-manager
- this file contains the name of the default display manager (Ubuntu only)/etc/lsb-release
- this file contains information about the version of the OS/etc/redhat-release
- this file contains information about the Redhat version (RHEL/CentOS only)/etc/issue
- this file contains general information about the OS release/run/log/journal
- this folder contains log files for systemd (non-persistent storage)/var/log/journal
- this folder contains log files for systemd (persistent storage)/var/log/audit
- this folder contains selinux audit logs (RHEL/CentOS only)
Commands run
When running commands standard out, standard error (if any) and the status (if non-zero) are output to files. The file format for standard out is <command>.out
, standard error is <command>.err
and status is <command>.status
, where <command>
is one of the commands listed below:
dpkg -l "*pcoip*"
- provides information about package status for all packages with "pcoip" in the name (Ubuntu only)dpkg -l "*teravfb*"
- provides information about package status for all packages with "teravfb" in the name (Ubuntu only)ls -l /var/crash
- lists all files in/var/crash
ls -lRZ /run/pcoip-
agent
- recursively lists all files including security context in/run/pcoip-agent
(security context will only be shown in RHEL/CentOS)ls -lZ /var/log/pcoip-agent
- lists all files with security context in/var/log/pcoip-agent
(security context will only be shown in RHEL/CentOS)pgrep -l pcoip
- lists all processes with "pcoip" in the namess -ax
- provides information about all unix socketssystemctl status pcoip
- shows the status of the PCoIP systemd servicewho
- lists all active logged in users (terminals, ssh, Xorg, etc)pcoip-view-license
- shows the status of locally installed licensespcoip-validate-license
- shows whether any licenses were available when the support bundler was runrpm -qai "*pcoip*"
- provides information about package status for all packages with "pcoip" in the name (RHEL/CentOS only)rpm -qai "*teravfb*"
- provides information about package status for all packages with "teravfb" in the name (RHEL/CentOS only)semodule -l
- lists all currently enabled selinux modules (RHEL/CentOS only)sestatus
- shows the current status of selinux (RHEL/CentOS only)firewall-cmd --list-services
- shows enabledfirewalld services (RHEL/CentOS only)ps wwauxfZ
- lists all running processes, including the user and security context they are running under (security context will only be shown in RHEL/CentOS)netstat -Wnap
- lists all active sockets and the processes they belong todmesg
- prints messages from the kernel ring buffer, can be useful for graphics agent debugging (e.g. if the nvidia driver could not be loaded, this may contain useful information)lsof
- lists open file descriptors, this is run for each of the pcoip-* processes running when the support bundler is invoked
Interpreting the data
After a clean Ubuntu Server install, if you forget to install a desktop before attempting a PCoIP session, you will get the following in the /var/log/pcoip-agent/session-launcher.log:
|
Q: How can I tell what GPU is present?
The information is in the Xorg config (/var/log/Xorg.100.log) and is logged while the driver is being set up.
Q: How can I tell what hypervisor my Agent software is running on?
The information is in out/dmesg.out and should be near the top saying "Hypervisor detected: <hypervisor>".