aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [kpatch] do not try to read kpatch data if it could not be runBryn M. Reeves2014-10-141-0/+2
| | | | | | | | | | Everything the kpatch plugin does requires the list of available kpatch patches obtained from 'kpatch list'. If this fails return immediately from the setup method. Fixes #417. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [debian/changelog] Fix tab spacingLouis Bouchard2014-10-131-2/+2
| | | | Signed-off-by: Louis Bouchard <louis.bouchard@canonical.com>
* [apt] Fix failing apt-cache policy detailsLouis Bouchard2014-10-131-7/+10
| | | | | | | | | | Split add_cmd_output to use suggest_filename since the output of apt-cache policy for each installed package would create an incredibly long filename. Fixes #415. Signed-off-by: Louis Bouchard <louis.bouchard@canonical.com>
* [debian/changelog] update changelog to new releaseAdam Stokes2014-10-121-0/+17
| | | | | | | Syncs up the version within the changelog to the latest release. Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [Makefile] Add debian pkg tarball buildLouis Bouchard2014-10-031-1/+12
| | | | | | | Fixes #418 Signed-off-by: Louis Bouchard <louis.bouchard@canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [powerpc] allow PowerPC plugin to run on ppc64leBryn M. Reeves2014-10-021-1/+1
| | | | | | | | | The plugin currently tests whether policy().get_arch() is equal to "ppc64". On little endian PowerPC machines this method returns "ppc64le". Change the check_enabled() method to test whether the returned string contains "ppc64". Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [yum] call rhsm-debug with --no-subscriptionsBryn M. Reeves2014-10-021-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [archive] invert sense of six.PY2 testBryn M. Reeves2014-10-011-1/+1
| | | | | | | | | Old versions of six do not include a 'PY2' attribute leading to an exception in sos_get_command_output(). Invert the sense of the test and check that six.PY3 is false instead as all versions of the module include this attribute. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [utilities] invert sense of six.PY2 testBryn M. Reeves2014-10-011-1/+1
| | | | | | | | | Old versions of six do not include a 'PY2' attribute leading to an exception in sos_get_command_output(). Invert the sense of the test and check that six.PY3 is false instead as all versions of the module include this attribute. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sos] bump version to 3.23.2Bryn M. Reeves2014-09-301-1/+4
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [Plugin] remove add_copy_specs()Bryn M. Reeves2014-09-30119-181/+169
| | | | | | | | | | | Merge add_copy_specs() into add_copy_spec() and treat any strings passed to the new method as though they were a single item list. Mirrors the prior change to add_cmd_outputs(). Fixes #301. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [Plugin] remove add_cmd_outputs()Bryn M. Reeves2014-09-3058-82/+79
| | | | | | | | | | | Remove add_cmd_outputs() and allow add_cmd_output() to accept a list of commands to invoke. Add a check and warn via the logs if a plugin attempts to use 'root_symlink' or 'suggest_filename' with a command list of length > 1. Fixes #301. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [kpatch] new pluginBryn M. Reeves2014-09-301-0/+38
| | | | | | Based on a suggestion from Marc Milgram in rhbz#1110918. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [cups] add /etc/cups/*.typesBryn M. Reeves2014-09-231-0/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [general] fix typo in hostname symlinkBryn M. Reeves2014-09-181-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [emc,powerpath] move PowerPath collection into its own pluginBryn M. Reeves2014-09-182-113/+63
| | | | | | | | | Move PowerPath functionality into a new powerpath plugin and remove the (now empty) EMC plugin. Fixes: #257. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [emc,navicl] move navicli collection into its own plugin.Bryn M. Reeves2014-09-182-78/+92
| | | | | | Related: #257. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [emc,symcli] move symcli collection into its own plugin.Bryn M. Reeves2014-09-182-72/+96
| | | | | | Related: #257. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [general] collect 'hostname' as well as 'hostname -f'Bryn M. Reeves2014-09-181-5/+2
| | | | | | | | | | | | | | | The --fqdn option to hostname depends on the system resolver configuration. On hosts where the fqdn is undefined the command may return: "hostname: Name or service not known" Since hostname will at least give the locally configured name regardless of resolver or DNS state collect both commands. Fixes #404. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_neutron] set correct plugin nameBryn M. Reeves2014-09-181-1/+1
| | | | | | Fixes #394. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [archive] introduce py2.6 TarFile compat wrapperBryn M. Reeves2014-09-181-1/+78
| | | | | | | | | | | Python 2.6 lacks the filter parameter to TarFile.add() that the TarFileArchive uses to preserve permissions on archive content. Work around this by creating a wrapper class that implements the missing functionality (duplicated from the py2.7.5 tarfile.py) and use it whenever running on a python version less than 2.7. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [utilities] do not pass unicode to shlex on PY2 runtimesBryn M. Reeves2014-09-181-0/+3
| | | | | | | | | | | | | | | | | | | | | | | Running sos-3.2beta on a python2.6 runtime leads to: File "/usr/sbin/sosreport", line 25, in <module> main(sys.argv[1:]) File "/usr/lib/python2.6/site-packages/sos/sosreport.py", line 1408, in main sos.execute() TypeError: execve() argument 1 must be encoded string without NULL bytes, not str > /usr/lib64/python2.6/subprocess.py(1234)_execute_child() -> raise child_exception This occurs because some command output is interpreted as unicode by the Python runtime. When this output is processed in a plugin and passed back down to sos_get_command_output() it leads to the above exception. Work around the problem by encoding strings passed to shlex.split on older Python versions. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [docs] update references to report optionsBryn M. Reeves2014-09-171-3/+3
| | | | | | | | | The --report switch was changed to --no-report a while back. Update the docs to reflect the new option. Fixes #396. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [apt] Removing leftover debugging codeLouis Bouchard2014-09-171-1/+0
| | | | | Signed-off-by: Louis Bouchard <louis.bouchard@canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [apt] switching shell crap to python syntaxLouis Bouchard2014-09-171-6/+7
| | | | | | | Avoid long string of piped shell commands at all cost Fixes: #398 Signed-off-by: Louis Bouchard <louis.bouchard@canonical.com>
* [keyutils] add to the storage profileBryn M. Reeves2014-09-171-1/+1
| | | | | | | Since keyutils is used by several storage components (NFS idmap service, cifs) add it to the 'storage' profile. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [keyutil] add kernel keyring tools supportBryn M. Reeves2014-09-171-0/+35
| | | | | | | Based on a request from Bill Yodlowsky. Collect request-key configuration and the output of 'keyctl show'. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sos] bump release to 3.2b1Bryn M. Reeves2014-09-171-1/+10
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [juju] Fix backtrace from juju pluginLouis Bouchard2014-09-171-0/+1
| | | | | | | | Restrict plugin execution to when juju is installed Fixes #400 Signed-off-by: Louis Bouchard <louis.bouchard@canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [teamd] add plugin for network teaming driverBryn M. Reeves2014-09-171-0/+54
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [memory,processor] add to the 'memory' profileBryn M. Reeves2014-09-172-2/+2
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [numa] new plugin for NUMA informationBryn M. Reeves2014-09-171-0/+45
| | | | | | | | | And define a new 'memory' profile to group related plugins together. Fixes #226. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] change description of non-default pluginsBryn M. Reeves2014-09-161-1/+1
| | | | | | | | | | | | | | | | | | | | Plugins are currently listed as 'not default' if the plugin's default_enabled() method evaluates to False: sendmail inactive sendmail service snmp inactive Simple network management protocol soundcard not default Sound devices squid inactive Squid caching proxy It sounds odd and it looks ugly in the plugin listing. Change the description to 'optional': sendmail inactive sendmail service snmp inactive Simple network management protocol soundcard optional Sound devices squid inactive Squid caching proxy Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] fix whitespace errorsBryn M. Reeves2014-09-161-0/+2
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [soundcard] make plugin default enabledBryn M. Reeves2014-09-161-3/+0
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [satellite] make plugin default enabledBryn M. Reeves2014-09-161-3/+0
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [gluster] remove unnecessary default_enabled()Bryn M. Reeves2014-09-161-3/+0
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] profile listing improvementsBryn M. Reeves2014-09-161-13/+30
| | | | | | | | | | | Add a listing of available profiles at the end of --list-plugins output and add plugin and profile counts to the output of both --list-plugins and --list-profiles. Also factor out some common code for formatting commas-separated multi-line lists. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [utilities,plugin] check for return status 126Bryn M. Reeves2014-09-162-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A return status of 126 indicates 'found but not executable'. This is returned from timeout for some malformed commands when running as a normal user but not when running as root, e.g.: Running 1/1: multipath... [plugin:multipath] collecting path '/etc/multipath/' [plugin:multipath] unpacked command tuple: ('['multipath -l', 'multipath -v4 -ll']', 'None', 'None', 300, 'None') [plugin:multipath] collecting output of '['multipath -l', 'multipath -v4 -ll']' Traceback (most recent call last): File "/usr/sbin/sosreport", line 25, in <module> main(sys.argv[1:]) File "/usr/lib/python2.7/site-packages/sos/sosreport.py", line 1389, in main sos.execute() AttributeError: 'list' object has no attribute 'split' > /usr/lib/python2.7/site-packages/sos/plugins/__init__.py(563)get_cmd_output_now() -> % (exe.split()[0], time() - start)) (Pdb) bt /usr/sbin/sosreport(25)<module>() -> main(sys.argv[1:]) /usr/lib/python2.7/site-packages/sos/sosreport.py(1389)main() -> sos.execute() /usr/lib/python2.7/site-packages/sos/sosreport.py(1369)execute() -> self.collect() /usr/lib/python2.7/site-packages/sos/sosreport.py(1144)collect() -> plug.collect() /usr/lib/python2.7/site-packages/sos/plugins/__init__.py(633)collect() -> self._collect_cmd_output() /usr/lib/python2.7/site-packages/sos/plugins/__init__.py(613)_collect_cmd_output() -> timeout=timeout, runat=runat) > /usr/lib/python2.7/site-packages/sos/plugins/__init__.py(563)get_cmd_output_now() -> % (exe.split()[0], time() - start)) (Pdb) result {'status': 126, 'output': u"timeout: failed to run command '[multipath -l,': Permission denied\n"} Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [multipath] fix add_cmd_output usageBryn M. Reeves2014-09-161-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Try to ensure FQDN of host is collectedPeter Portante2014-09-161-1/+6
| | | | | | | | | Not all systems are required to have the generic hostname command return the FQDN. We have encountered customers who require the a short name by default. Adding the "-f" output helps to get that information. Signed-off-by: Peter Portante <peter.portante@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [logs] make journalctl log collection honour all_logsBryn M. Reeves2014-09-161-1/+5
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [logs] improve log collection for journald-only configurationsBryn M. Reeves2014-09-161-1/+14
| | | | | | | | | | If no syslog exists collect the last three days worth of journald logs by default and allow the user to specify a "log_days" option to control the data collected. Fixes #325. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [systemd,logs] move journalctl logs to logs pluginBryn M. Reeves2014-09-162-2/+4
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] fix use of -o and -n without --profileBryn M. Reeves2014-09-161-1/+4
| | | | | | | | Break the logic of the combined 'onlyplugins' and profile check out to make it more readable and fix a bug that caused all default plugins to be enabled when running '-o someplug'. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [docker] optional log capturing for all containersAdam Stokes2014-09-161-2/+9
| | | | | | | | | | This options provides the user the ability to pull logs from all containers including the terminated/stopped. Fixes #360 Fixes #365 Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [sosreport] fix test in SoSReport._is_in_profile()Bryn M. Reeves2014-09-161-1/+1
| | | | | | | | All plugins belong to the null (empty) plugin. Fix the test in _is_in_profile() to check against the list of active profiles and not the list of all detected profiles. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [plugins] do not truncate mangled command namesBryn M. Reeves2014-09-162-3/+1
| | | | | | | | | There's no reason to truncate mangled command names within an archive. This isn't MS-DOS 3.1 and there are cases where the 64 character limit causes a loss of uniqueness and resulting name collisions (e.g. namespaced network commands). Fixes #388.
* [ssmtp] add sSMTP pluginBryn M. Reeves2014-09-161-0/+42
| | | | | | Fixes #395. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] allow --profile with -o and -nBryn M. Reeves2014-09-161-5/+9
| | | | | | | | | | | Allow the user to fine-tune the set of enabled plugins using the -o (--only-plugins) and -n (--skip-plugins) options. These add and remove plugins from the set defined by the active profile(s). Both options may be specified multiple times, or given lists of plugins to operate on. E.g.: Signed-off-by: Bryn M. Reeves <bmr@redhat.com>