68 lines
2.4 KiB
Diff
68 lines
2.4 KiB
Diff
|
From 4c92968ce461cdfc6a5d913748b2ce4f148ff4a9 Mon Sep 17 00:00:00 2001
|
||
|
From: Jake Hunsaker <jhunsake@redhat.com>
|
||
|
Date: Thu, 10 Mar 2022 12:31:49 -0500
|
||
|
Subject: [PATCH] [tigervnc] Update collections for newer versions of TigerVNC
|
||
|
|
||
|
First, relaxes the file specifications for collection by capturing the
|
||
|
entire `/etc/tigervnc/` directory.
|
||
|
|
||
|
Second, adds collection of service status and journal output for each
|
||
|
configured vnc server. Collection of `vncserver -list` is kept for
|
||
|
backwards compatibility.
|
||
|
|
||
|
Finally, add a short docstring for the plugin for --help output.
|
||
|
|
||
|
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
|
||
|
---
|
||
|
sos/report/plugins/tigervnc.py | 28 +++++++++++++++++++++++-----
|
||
|
1 file changed, 23 insertions(+), 5 deletions(-)
|
||
|
|
||
|
diff --git a/sos/report/plugins/tigervnc.py b/sos/report/plugins/tigervnc.py
|
||
|
index 1302f6d4..e31aee25 100644
|
||
|
--- a/sos/report/plugins/tigervnc.py
|
||
|
+++ b/sos/report/plugins/tigervnc.py
|
||
|
@@ -12,17 +12,35 @@ from sos.report.plugins import Plugin, RedHatPlugin
|
||
|
|
||
|
|
||
|
class TigerVNC(Plugin, RedHatPlugin):
|
||
|
+ """
|
||
|
+ This plugin gathers information for VNC servers provided by the tigervnc
|
||
|
+ package. This is explicitly for server-side collections, not clients.
|
||
|
+
|
||
|
+ By default, this plugin will capture the contents of /etc/tigervnc, which
|
||
|
+ may include usernames. If usernames are sensitive information for end
|
||
|
+ users of sos, consider using the `--clean` option to obfuscate these
|
||
|
+ names.
|
||
|
+ """
|
||
|
|
||
|
short_desc = 'TigerVNC server configuration'
|
||
|
plugin_name = 'tigervnc'
|
||
|
packages = ('tigervnc-server',)
|
||
|
|
||
|
def setup(self):
|
||
|
- self.add_copy_spec([
|
||
|
- '/etc/tigervnc/vncserver-config-defaults',
|
||
|
- '/etc/tigervnc/vncserver-config-mandatory',
|
||
|
- '/etc/tigervnc/vncserver.users'
|
||
|
- ])
|
||
|
+ self.add_copy_spec('/etc/tigervnc/')
|
||
|
+
|
||
|
+ # service names are 'vncserver@$port' where $port is :1,, :2, etc...
|
||
|
+ # however they are not reported via list-unit-files, only list-units
|
||
|
+ vncs = self.exec_cmd(
|
||
|
+ 'systemctl list-units --type=service --no-legend vncserver*'
|
||
|
+ )
|
||
|
+ if vncs['status'] == 0:
|
||
|
+ for serv in vncs['output'].splitlines():
|
||
|
+ vnc = serv.split()
|
||
|
+ if not vnc:
|
||
|
+ continue
|
||
|
+ self.add_service_status(vnc[0])
|
||
|
+ self.add_journal(vnc[0])
|
||
|
|
||
|
self.add_cmd_output('vncserver -list')
|
||
|
|
||
|
--
|
||
|
2.34.3
|
||
|
|