aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [libvirt] add 'virsh capabilities' outputBryn M. Reeves2015-03-041-0/+2
| | | | | | Capture the host capabilities XML dump from libvirt. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [logs] Implement all-logs, limits and small fixes.Bryan Quigley2015-03-041-10/+16
| | | | | | | | | | | | | | | | | | | | | | Implement all logs option to collect everything in /var/log. Add size limits around all key log files. When not doing all logs capture ls output showing everything in /var/log. This will help with realizing when sosreport has missed some other file. mail* was dropped because it seems to be covered for the most commom case by mail.* in sendmail plugin. kern* was changed to capture kern.log and kern.log.1. syslog.1 is now captured. Closes LP: 1356211 Captures /etc/rsyslog.d directory. Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [networking] test nmcli status before using outputBryn M. Reeves2015-03-031-2/+2
| | | | | | | | | | | | | | | | | The networking module assumes that nmcli commands succeed if the results object is not None; this is not valid and will lead to errors in subsequent commands if the call returned an error message instead of the expected content: [plugin:networking] collecting output of 'nmcli con show conf 'Error: nmcli (0.9.10.0) and NetworkManager (unknown) versions don't match. Force execution using --nocheck, but the results are unpredictable.'' 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 1459, in main sos.execute() ValueError: No closing quotation Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [apport] Move apport logging to apport pluginBryan Quigley2015-03-022-2/+9
| | | | | | | | Apport logging was in the logs plugin previously. Also added "all logs" support so it could collect more than it previously did. Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com>
* [docs] update version in Sphinx configurationBryn M. Reeves2015-03-021-2/+2
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [docs] build docs by defaultBryn M. Reeves2015-03-021-1/+5
| | | | | | | Build the docs 'html' and 'man' targets when the 'build' target is built. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [landscape] Move landscape logs, add server supportBryan Quigley2015-03-022-5/+43
| | | | | | | | | | | | | | | | | | Landscape log collection has been in the logs plugin, this moves it under the landscape plugin. Previously the entire directory was collected. Now we just collect all the logs that haven't been rotated. "All logs" support was added in case you want the whole directory. Support was added for the landscape-server config. Logs are covered by the same collection we have already. The license.txt required some care. It's a gpg signed file but we don't need the actual license: just that it's not malformed (gpg -v) and what the license details are (head). Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [docs] Remove make deb, run from gitBryan Quigley2015-03-021-1/+1
| | | | | | | | Make deb was removed You can also just run ./sosreport from git now. Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [dpkg] Collect debconf db, add verify and all logs optionsBryan Quigley2015-02-251-1/+13
| | | | | | | | | | | | Collect debconf db, which is really dpkg configuration info Add verify option to dpkg, to verify and check. On a machine in a good state that only took 20 seconds or so. Add all logs option to collect more than the last dpkg log. Closes: #483 Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* Revert "[build] install sos.conf from setup.py"Bryn M. Reeves2015-02-201-3/+1
| | | | | | | | | | | | | | | | | | | This reverts commit edd516836e1070df6c95bd2d71e6b82feaa10a11. It turns out installing things to /etc from setup.py is a terrible idea; distutils deliberately makes this difficult (by design) and expects you to either use data resources (installed under /usr on *nix platforms) or provide a script or other means to set up the configuration post-install[1][2]. Instead revert to simply installing the python code and docs via setup.py and allow distribution packagers to handle the config file installation as they choose. [1] http://stackoverflow.com/questions/10456279/python-setuptools [2] http://stackoverflow.com/questions/3325606/how-to-handle-conf Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [build] install sos.conf from setup.pyBryn M. Reeves2015-02-191-1/+3
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] fix string construction in SoSReport.__init__()Bryn M. Reeves2015-02-191-2/+3
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [global] fix code style for pep8 warning W503Bryn M. Reeves2015-02-176-10/+9
| | | | | | | | | | | | | Recent versions of the pep8 style checker add checks for: W503 line break before binary operator Numerous sos modules trigger this warning as they follow the C convention of always placing the operator at the beginning of the continuation line. Fix these occurrences (and the Travis CI build for master). Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [pci] simplify lspci collectionBryn M. Reeves2015-02-111-5/+2
| | | | | | | | | | pciutils now supports showing name information along with numeric identifiers (lspci -nnvv). Use this as the default 'lspci' data and drop the split names vs. numbers output. Fixes #458. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [pcp] collect /etc/pcp.confBryn M. Reeves2015-02-111-0/+1
| | | | | | | | | | The file /etc/pcp.conf is added to list of lists that will be collected. Signed-off-by: Shane Bradley <sbradley@redhat.com> Fixes #465. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [docs] add --experimental to sosreport.1Bryn M. Reeves2015-02-111-0/+5
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport,plugin] add --experimental and ExperimentalPlugin tagBryn M. Reeves2015-02-113-5/+31
| | | | | | | | | | Add an ExperimentalPlugin tagging class and an --experimental command line option. This can be used to encourage testing of new plugins and plugin ports without indicating full support. Fixes #470. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [postgresql] don't warn if dbname is not setBryn M. Reeves2015-02-111-7/+0
| | | | | | Fixes #478. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [lightdm] add pluginBryn M. Reeves2015-02-111-0/+47
| | | | | | Fixes #481. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [gdm] add journalctl logs and systemctl statusBryn M. Reeves2015-02-111-0/+4
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [mpt] add pluginBryn M. Reeves2015-02-111-0/+30
| | | | | | | | | Add a plugin to collect LSI Message Passing Technology driver status from /proc. Related: #490. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [kernel] collect directory listings for module updatesBryn M. Reeves2015-02-111-1/+13
| | | | | | Related #490. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [targetcli] add pluginBryn M. Reeves2015-02-111-0/+36
| | | | | | | Add a plugin for targetcli, the configuration shell for RTSLib and the kernel TCM/LIO subsystem. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [process] collect /proc/sched_debugBryn M. Reeves2015-02-101-0/+1
| | | | | | Related: #490. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [block] collect /proc/diskstatsBryn M. Reeves2015-02-101-3/+3
| | | | | | Related: #490. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [memory] add ksm, swap and vmallocinfo data to pluginBryn M. Reeves2015-02-101-2/+9
| | | | | | Related: #490. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [kernel] collect /sys/firmware/acpi/*Bryn M. Reeves2015-02-101-0/+1
| | | | | | | | Collect ACPI firmware tables and state from /sys. Related: #490. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [networking] additional ip, firewall and traffic shaping commandsBryn M. Reeves2015-02-101-2/+8
| | | | | | | Collect tc qdisc output, ipv4/6 routing policy, NOARP arp cache, iptables with --exact counters, and iproute2 configuration. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [infiniband] add opensm and infiniband-diags supportBryn M. Reeves2015-02-101-3/+10
| | | | | | | | | Collect opensm and rdma configuration and logs and output from the infiniband-diags commands. Fixes #492. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [kimchi] fix collection of /etc/kimchiBryn M. Reeves2015-02-101-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_swift] capture all swift logsMichael Kerrin2015-02-101-1/+3
| | | | | | | | | The swift wasn't doing this previously. Fixes #460 Signed-off-by: Michael Kerrin <michael.kerrin@hp.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [haproxy] Fix haproxy on Debian systemsMichael Kerrin2015-02-101-2/+4
| | | | | | | | | Gather /var/log/haproxy.log files Fixes #500 Signed-off-by: Michael Kerrin <michael.kerrin@hp.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [pep8] fix 2 new pep8 errorsAdam Stokes2015-02-102-8/+15
| | | | | | | | Apparently, there are new pep8 rules out in the wild. This patch fixes those errors along with additional formatting to be more compliant with pep8. Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [general] Better handling --name and --ticket-number in interactive modePavel Moravec2015-02-061-8/+11
| | | | | | | Carry forward values from the CLI options into the interactive mode, resolves #485 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [foreman] Skip collection of generic resourcesLukas Zapletal2015-02-032-35/+3
| | | | | | | | | | | | | | | | | | | New option was added to foreman-debug (-g) to skip collecting of generic resources (firewall, selinux, cpu, memory). This patch leverages that. https://github.com/theforeman/foreman/blob/develop/script/foreman-debug Since katello-debug is now part of foreman-debug (as a plugin), there is no need of separate sosreport plugin. https://github.com/Katello/katello/blob/master/deploy/script/katello-debug.sh New subpackage called foreman-debug was introduced. It is present in both upstream Foreman and Katello installations as well as on both Satellite 6 main node and capsule instances. It can be used to detect if foreman-debug script is present. Signed-off-by: Lukas Zapletal <lzap+git@redhat.com>
* [selinux] fixfiles produces no useful output, use restoreconJohn Haxby2015-01-281-1/+1
| | | | | | | | | | | Also discard stderr for restorecon since that just reports files that have no default context which is almost certainly not useful for sos. Signed-off-by: John Haxby <john.haxby@oracle.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> --- sos/plugins/selinux.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
* [plugins,utilities] Allow commands to discard stderrJohn Haxby2015-01-282-14/+24
| | | | | | | | | | | | | | | Just add "stderr=False" to add_cmd_output() if you don't want the command's stderr in the sosreport. Signed-off-by: John Haxby <john.haxby@oracle.com> Minor edits for pep8 conformance and to shorten the argument name. Signed-off-by: Bryn M. Reeves <bmr@redhat.com> --- sos/plugins/__init__.py | 29 +++++++++++++++++------------ sos/utilities.py | 5 +++-- 2 files changed, 20 insertions(+), 14 deletions(-)
* [networking] add ethtool -dBryn M. Reeves2015-01-281-0/+1
| | | | | | | | | | | | Add 'ethtool -d <dev>' to the networking plugin. This retrieves and prints a register dump for the specified network device. This may be required to debug some low-level network interface problems (e.g. embedded card configuration values) that would otherwise require the use of proprietary diagnostic tools. Signed-off-by: Sheng Liu <shenglsh@linux.vnet.ibm.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [policies] run PackageManager query_command under timeoutBryn M. Reeves2015-01-273-4/+13
| | | | | | | | | | | | | | | | | | | | | PackageManager query commands may block due to file system locks or problems with the package database. Run the query command with a timeout of 30s and exit if the timeout expires. Signed-off-by: Aruna Balakrishnaiah <aruna@linux.vnet.ibm.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> --- Changes from v3: Add default timeout instead of making it configurable Add print function instead of error() Changes from v2: Introduce timeout in shell_out wrapper Changes from v1: Addressed issues of the maintainer Introduce timeout instead of relying on yum.
* [iprconfig] add plugin for IBM Power RAID adaptersBryn M. Reeves2015-01-271-0/+110
| | | | | | | | | Capture information which helps in better understanding of IBM Power RAID storage adapter configuration. Since iprconfig is specific to power adding the relevant commands in powerpc plugin. Signed-off-by: Aruna Balakrishnaiah <aruna@linux.vnet.ibm.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [mysql] improve handling of dbuser, dbpass and MYSQL_PWDBryn M. Reeves2015-01-221-4/+20
| | | | | | | | | | | Make sure that the mysql plugin behaves correctly when given different combinations of values for dbuser, dbpass and MYSQL_PWD. * If dbdump is set then either dbpass or MYSQL_PWD must be set * Warn if dbdump is set and dbuser or dbpass is True/False/null (indicates either 'sosreport -a' or '-k mysql.dbpass') Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [mysql] test for boolean values in user and password optionsBryn M. Reeves2015-01-201-0/+3
| | | | | | | | | | | | | | | | | | | | | If sosreport is run with '-a' all options will be set to boolean True. This causes an exception if an attempt is made to set an environment variable to the option value: 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 1435, in main sos.execute() TypeError: must be string, not bool > /usr/lib64/python2.7/os.py(471)__setitem__() -> putenv(key, item) Test both values with isinstance(val, bool) and do not attempt to collect a database dump if either is a boolean. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [apport] Add information on specific crashesBryan Quigley2015-01-191-0/+7
| | | | | | | | | | | The whoopsie ID let's us look the machine up on errors.ubuntu.com for crash reports. Partial output from /var/crash let's us better know what crashdumps the user has without uploading all of them. Signed-off-by: Bryan Quigley <Bryan.Quigley@Canonical.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [networking] Enable the networking on debian based systemsMichael Kerrin2015-01-192-2/+3
| | | | | | | Fixes #463 Signed-off-by: Michael Kerrin <michael.kerrin@hp.com> Signed-off-by: Adam Stokes <adam.stokes@ubuntu.com>
* [docker] use splitelines() for command outputBryn M. Reeves2015-01-191-2/+1
| | | | | | | | | | | Let's not reinvent splitlines(); the handrolled version docker was using fails to ignore the last newline: [plugin:docker] collecting output of 'docker logs 9b8f61c09dba' [plugin:docker] collecting output of 'docker logs 6f46267c91d6' [plugin:docker] collecting output of 'docker logs ' Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] fix silent exception handling in sosreportBryn M. Reeves2015-01-191-6/+12
| | | | | | | | | | | | The OSError and IOError exception branches for the setup, collect, and postproc methods silently ignore plugin exceptions that are not on the list of fatal fs errors (that will cause sos to halt immediately). Fix this and either raise the exception (if --debug is given) or log it to a file via _log_plugin_exception(). Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] fix stray whitespace fix from previous commitBryn M. Reeves2015-01-191-1/+0
| | | | | | Fixed in tree but not added to commit. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] log plugin exceptions to a fileBryn M. Reeves2015-01-191-4/+13
| | | | | | | | | Add exception logging for the Plugin.postproc() method and move plugin exceptions into a separate per-plugin log file. This is less cluttered than pushing a multi-line traceback through the soslog.error logger and matches the behaviour of older releases. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ctdb] fix RedHatPlugin tagging useBryn M. Reeves2015-01-191-2/+2
| | | | | | | | | | | The generic Ctdb class is tagged with RedHatPlugin. This causes the RedHatCtdb to not execute (since only the first matching class is instantiated). Remove the RedHatPlugin tag from the Ctdb class and fix the former's call to Ctdb.setup(). Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [squid] don't use add_copy_spec_limt() for conf filesBryn M. Reeves2015-01-191-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>