diff options
author | Bryn M. Reeves <bmr@redhat.com> | 2012-12-10 14:15:40 +0000 |
---|---|---|
committer | Bryn M. Reeves <bmr@redhat.com> | 2012-12-10 14:15:40 +0000 |
commit | 3eb86395a4485eca1b6c37d154daaf4f01e570ca (patch) | |
tree | 18c052368dbb529eae4a46b8950fd7a8b0006305 | |
parent | 7a0cf069b5d87c9362d89d16217710408cce7e0c (diff) | |
download | sos-3eb86395a4485eca1b6c37d154daaf4f01e570ca.tar.gz |
Add systemd module
Add a new module to collect systemd information. This is the start
of a general re-organisation of the init related information
captured by sos.
Initially collect systemctl and journalctl command output as well
as (some) configuration files owned by the package.
-rw-r--r-- | sos/plugins/systemd.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/sos/plugins/systemd.py b/sos/plugins/systemd.py new file mode 100644 index 00000000..8fcb3211 --- /dev/null +++ b/sos/plugins/systemd.py @@ -0,0 +1,46 @@ +## Copyright (C) 2012 Red Hat, Inc., Bryn M. Reeves <bmr@redhat.com> + +### This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 2 of the License, or +## (at your option) any later version. + +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. + +## You should have received a copy of the GNU General Public License +## along with this program; if not, write to the Free Software +## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +from sos.plugins import Plugin, RedHatPlugin, DebianPlugin, UbuntuPlugin +import os + +class systemd(Plugin): + """ Information on systemd and related subsystems + """ + + plugin_name = "systemd" + + packages = ('systemd',) + files = ('/usr/lib/systemd/systemd',) + + def setup(self): + self.collectExtOutput("systemctl show --all") + self.collectExtOutput("systemctl list-units --failed") + self.collectExtOutput("systemctl list-unit-files") + self.collectExtOutput("systemctl list-units --all") + self.collectExtOutput("systemctl dump") + self.collectExtOutput("systemd-delta") + self.collectExtOutput("journalctl --verify") + self.collectExtOutput("journalctl --all --this-boot --no-pager") + self.collectExtOutput("journalctl --all --this-boot --no-pager -o verbose") + + self.addCopySpecs(["/etc/systemd", + "/lib/systemd" + "/etc/vconsole.conf", + "/etc/yum/protected.d/systemd.conf"]) + +class RedHatSystemd(systemd, RedHatPlugin): + |