Combine sosreport plugins into a single plugin

This commit is contained in:
James Laska
2014-08-13 08:48:40 -04:00
parent 23257f1217
commit 65d82fca15
4 changed files with 78 additions and 77 deletions

View File

@@ -1,36 +0,0 @@
# Copyright (c) 2014 Ansible, Inc.
# All Rights Reserved.
import sos.plugintools
class tower(sos.plugintools.PluginBase):
'''Tower SOS plugin'''
def setup(self):
commands = [
"ansible --version", # ansible core version
"awx-manage --version", # tower version
"supervisorctl status", # tower process status
"tree -d /var/lib/awx", # show me the dirs
"ls -ll /var/lib/awx", # check permissions
"ls -ll /etc/awx"
]
dirs = [
"/etc/awx/",
"/var/log/supervisor/",
"/var/log/syslog",
"/var/log/udev",
"/var/log/kern*",
"/var/log/dist-upgrade",
"/var/log/installer",
"/var/log/unattended-upgrades",
"/var/log/apport.log"
]
for path in dirs:
self.addCopySpec(path)
for command in commands:
self.collectExtOutput(command)

View File

@@ -1,37 +0,0 @@
# Copyright (c) 2014 Ansible, Inc.
# All Rights Reserved.
from sos.plugins import Plugin, RedHatPlugin, UbuntuPlugin
class tower(Plugin, RedHatPlugin, UbuntuPlugin):
'''Tower SOS plugin'''
plugin_name = "tower"
def setup(self):
commands = [
"ansible --version", # ansible core version
"awx-manage --version", # tower version
"supervisorctl status", # tower process status
"tree -d /var/lib/awx", # show me the dirs
"ls -ll /var/lib/awx", # check permissions
"ls -ll /etc/awx"
]
dirs = [
"/etc/awx/",
"/var/log/supervisor/",
"/var/log/syslog",
"/var/log/udev",
"/var/log/kern*",
"/var/log/dist-upgrade",
"/var/log/installer",
"/var/log/unattended-upgrades",
"/var/log/apport.log"
]
for path in dirs:
self.add_copy_spec(path)
for command in commands:
self.collect_ext_output(command)

77
tools/sosreport/tower.py Normal file
View File

@@ -0,0 +1,77 @@
# Copyright (c) 2014 Ansible, Inc.
# All Rights Reserved.
import sos
from pkg_resources import parse_version
if parse_version(sos.__version__) >= parse_version('3.0'):
from sos.plugins import Plugin, RedHatPlugin, UbuntuPlugin
class tower(Plugin, RedHatPlugin, UbuntuPlugin):
'''Collect Ansible Tower related information'''
plugin_name = "tower"
def setup(self):
commands = [
"ansible --version", # ansible core version
"awx-manage --version", # tower version
"supervisorctl status", # tower process status
"tree -d /var/lib/awx", # show me the dirs
"ls -ll /var/lib/awx", # check permissions
"ls -ll /etc/awx"
]
dirs = [
"/etc/awx/",
"/var/log/supervisor/",
"/var/log/syslog",
"/var/log/udev",
"/var/log/kern*",
"/var/log/dist-upgrade",
"/var/log/installer",
"/var/log/unattended-upgrades",
"/var/log/apport.log"
]
for path in dirs:
self.add_copy_spec(path)
for command in commands:
self.collect_ext_output(command)
else:
import sos.plugintools
class tower(sos.plugintools.PluginBase):
'''Collect Ansible Tower related information'''
def setup(self):
commands = [
"ansible --version", # ansible core version
"awx-manage --version", # tower version
"supervisorctl status", # tower process status
"tree -d /var/lib/awx", # show me the dirs
"ls -ll /var/lib/awx", # check permissions
"ls -ll /etc/awx"
]
dirs = [
"/etc/awx/",
"/var/log/supervisor/",
"/var/log/syslog",
"/var/log/udev",
"/var/log/kern*",
"/var/log/dist-upgrade",
"/var/log/installer",
"/var/log/unattended-upgrades",
"/var/log/apport.log"
]
for path in dirs:
self.addCopySpec(path)
for command in commands:
self.collectExtOutput(command)