aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [mysql] Enable mysql for OSP container envMartin Schuppert2019-03-191-1/+2
| | | | | | | | | | | | | In containerized OSP env we now do not have no mysql packages installed outside the containers. Therefore the mysql plugin does not auto run. This adds the openstack-selinux package to the RH package list of the mysql plugin like on the OSP plugins. Resolves: #1501 Signed-off-by: Martin Schuppert <mschuppert@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [stratis] Add new pluginJake Hunsaker2019-03-191-0/+33
| | | | | | | | | Adds a new plugin for the stratis storage manager Resolves: #1495 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [kubernetes] Fix 'describe' option enablement and functionJake Hunsaker2019-03-191-13/+13
| | | | | | | | | | | | | | | | | | The 'describe' option logic was incorrectly nested behind the 'all' option logic - so users couldn't successfully use the 'describe' option unless they also specified 'all'. Fixes the alignment so that 'describe' can be used properly and separately. Additionally fixes an issue where the syntax for getting resources for a specified namespace only worked for pods, and otherwise generated an error. Resolves: #1494 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] Clear nested threadpool threads on timeoutJake Hunsaker2019-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | We nest ThreadPoolExecutors to run plugins to enable whole-plugin timeouts, with the timeout being handled by the nested threadpool. However, calling shutdown() on the nested thread is incorrect in the event of a plugin timeout, as it only cancels pending jobs, not currently running jobs that the timed-out plugin is. Instead, call _threads.clear() to forcibly cancel the running job, thus allowing the thread the return to the higher level threadpool and allow other plugins to run via that thread. This still allows data captured up to the point of the timeout to be written to the sosreport. Fixes: #1446 Resolves: #1492 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] raise SystemExit out of list handlersBryn M. Reeves2019-03-191-4/+3
| | | | | | | | | | | | | | | Since the temporary directories have already been set up by the time we process the --list-* handling (plugins, profiles, presets), we still need to follow the _cleanup() path at exit. To avoid a duplicate _cleanup() and resulting File Not Found exception, raise SystemExit out of these paths, which takes us through the normal exception handling in SoSReport.execute() and is consistent with all other paths through the command. Resolves: #1594. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [insights] fix handling of configs tupleBryn M. Reeves2019-03-191-16/+12
| | | | | | | | | | | The configs member is now a tuple: we can't just slam it into a add_copy_specs() list or a do_file_sub() call and have it work. Split out the a_c_s() and pass the tuple alone (it looks less ugly than having a cons inside the list), and loop over the elements in postproc to handle the possible file locations. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [fibrechannel] add fc_vports attribute collectionJohn Pittman2019-03-191-1/+2
| | | | | | | | | | | | Present in the /sys/class/ directory is a fourth fc directory called fc_vports. Collect attribute info for ports in this directory as they are useful in troubleshoting fabric config issues. Resolves: #1490 Signed-off-by: John Pittman <jpittman@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [scsi] collect scsi_host sysfs host valuesJohn Pittman2019-03-191-0/+5
| | | | | | | | The scsi_host attributes can be very important when identifying LLD/shost level issues. Add host value collection via udevadm. Signed-off-by: John Pittman <jpittman@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [block] collect queue values for block devicesJohn Pittman2019-03-191-0/+2
| | | | | | | | | The queue values for block devices are very important for performance, alignment, and I/O size issues. Add these values by default. Signed-off-by: John Pittman <jpittman@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [insights] update package names and pathsAshish Humbe2019-03-191-5/+13
| | | | | | | Resolves: #1426 Signed-off-by: Ashish Humbe <ahumbe@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [subscription_manager] Add syspurpose and rct collectionJake Hunsaker2019-03-191-1/+6
| | | | | | | | | | | | Adds syspurpose output collection which is a new tool to assist with subscription manager on RHEL systems. Also adds rct output for default product certificates. Resolves: #1489 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [firewalld] Collect direct rules, overall state and logging settingPatrick Talbert2019-03-191-1/+9
| | | | | | | | | | | | | Direct Rules are an increasingly common way to control the firewall, but current sos plugin output does not get these. Update the plugin to grab firwall-cmd output about Direct Rules, and also pick up the 'state' output and newer logging settings. Resolves: #1486 Signed-off-by: Patrick Talbert <ptalbert@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [policies] Fix default xz versionPierre Equoy2019-03-191-1/+1
| | | | | | | | | | | | | | | | | | | While running some tests using sosreport in a snap, I ran into the following issue: Creating compressed archive... [archive:TarFileArchive] An error occurred compressing the archive: unorderable types: int() >= str() This is because the `xz_version` variable might be set to a list containing one integer, but it was later compared to a list of strings, raising an exception. Resolves: #1485 Signed-off-by: Pierre Equoy <pierre.equoy@canonical.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [services/upstart] Cleanup and move commands to right pluginBryan Quigley2019-03-192-7/+3
| | | | | | | | | | Remove /sbin/ for service command so it runs on ubuntu. Move initctl command to upstart plugin Resolves: #1484 Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_instack] more indentation fixesBryn M. Reeves2019-03-191-12/+12
| | | | | | | The outer loop was also double-indented (my local version of pycodestyle did not pick this up, nor did my eyes...). Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ipvs] Gather additional ipvsadm outputPatrick Talbert2019-03-191-1/+6
| | | | | | | | | | Collect further ipvsadm details and always do so with the -n numeric option. Resolves: #1483 Signed-off-by: Patrick Talbert <ptalbert@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_instack] re-format innermost loopBryn M. Reeves2019-03-191-10/+10
| | | | | | | Re-format the indentation and structure of the innermost loop in the failed deployments capture. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_instack] pass lists to add_cmd_output()Bryn M. Reeves2019-03-191-3/+4
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_instack] Support for multiple stacksJoe Talerico2019-03-191-22/+26
| | | | | | | The OpenStack undercloud can support > 1 stack. This patch will iterate through all the possible stacks deployed on the undercloud. Signed-off-by: Joe Talerico <rook@redhat.com>
* [presets] Create preset directory if it does not existJake Hunsaker2019-03-191-0/+3
| | | | | | | | | | | When attempting to add a preset when /var/lib/sos/presets does not exist, the attempt will fail. Now, if the directory does not exist, sos will attempt to create it. Resolves: #1480 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [man] Update manpage for presetsJake Hunsaker2019-03-191-0/+33
| | | | | | | | | | | | | The manpage for sosreport was previously missing documentation for the new preset feature in 3.6. This updates the manpage to include entries for add-preset, del-preset, list-presets, and the --desc options. Resolves: #1479 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [smartcard] collect info about smart card readers via openscPavel Moravec2019-03-181-3/+10
| | | | | | | | | Inspect smart card reader information using opensc command pkcs11-tool and collect its configuration. Resolves: #1478 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [juju] Add detection when juju is installed as a snap.Eric Desrochers2019-03-181-1/+1
| | | | | | | | | | | Conventional DEB package extract juju binary in /usr/bin/juju, but SNAP extract juju binary in /snap/bin/juju. Fixes: #1475 Resolves: #1476 Signed-off-by: Eric Desrochers eric.desrochers@canonical.com Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [etcd] Include journalJuan-Luis de Sousa-Valadas Castaño2019-03-181-0/+1
| | | | | | | Resolves: #1474 Signed-off-by: Juan-Luis de Sousa-Valadas <jdesousa@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [plugins] Decrease log verbosity when do_file_sub failed on missing filePavel Moravec2019-03-181-2/+8
| | | | | | | | | In case do_file_sub fails to apply a substitution on a non-existing file, don't log it as an error log to stdout. Resolves: #1471 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [openvswitch] Capture additional datapath flowsAndreas Karis2019-03-181-0/+2
| | | | | | | | | | Capture additional datapath flows for the OVS netdev datapath with: ovs-appctl dpctl/dump-flows Resolves: #1468 Signed-off-by: Andreas Karis <akaris@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ipsec] Remove IPSec plugin in favor of OpenSwanRobb Manes2019-03-181-42/+0
| | | | | | | | | | | | | | Red Hat distributions have not used the ipsec-tools and racoon packages since RHEL5, and all of this information is collected in the OpenSwan module via the same paths. Similarly, Debian distributions have not provided this since wheezy, and the same data is collected in OpenSwan. Resolves: #1465 Signed-off-by: Robb Manes <rmanes@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openswan] fix option list styleBryn M. Reeves2019-03-181-3/+4
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openswan] Forbid collection of secrets and certdbRobb Manes2019-03-181-1/+6
| | | | | | | | | | | | | | When collecting IPSec data, currently nothing prevents the collection of keys or the cert.db files. Ensure we don't collect this information as it is private. Thanks to Robert Bost (@bostrt) for discovering this and Matt Rogers (@mrogers950) for double checking what we should ignore. Resolves: #1463 Signed-off-by: Robb Manes <rmanes@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [utilities] Remove the __path__ attribute comparison with empty stringSourabh Jain2019-03-181-1/+1
| | | | | | | | | | | | | | | This patch removes an unnecessary comparison on package's __path__ attribute with an empty string in get_modules method. When we pass an empty path to _find_plugins_from_list function it returns None. The NoneType is not an iterable entity, so this will leads to runtime error when we extend the plugins list with None value. Resolves: #1463 Signed-off-by: Sourabh Jain <sourabhjain@linux.ibm.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] use mode='w' when writing plugin exceptionsFilip Krska2019-03-181-1/+1
| | | | | | | | | | Use append mode when writing to plugin exception files: otherwise, if multiple exceptions occur within one plugin (e.g. in separate execution phases), the later ones will overwrite the earlier. Resolves: #1461 Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [archive] add mode argument to Archive.add_string()Filip Krska2019-03-181-3/+3
| | | | | | | | | Add mode (e.g. to allow append) support to add_string() function. Related: #1461 Signed-off-by: Filip Krska <fkrska@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ovirt] collect `engine-config -d` when availableDan Kenigsberg2019-03-181-2/+6
| | | | | | | | | | Newer versions of ovirt-engine can produce a short and readable diff from the "factory defaults". Resolves: #1460 Signed-off-by: Dan Kenigsberg <danken@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_novajoin] Novajoin logs and confDavid Vallee Delisle2019-03-181-0/+40
| | | | | | | Resolves: #1459 Signed-off-by: David Vallee Delisle <dvd@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [networking] call ethtool for proper vlan device namesPavel Moravec2019-03-181-42/+25
| | | | | | | | | | Dont rely on device names from "ip -o link" output where the names contain also physical device name. Rather get the list of device names from listing /sys/class/net/ directory. Resolves: #1458 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [logging] Always cleanup temp directoryJake Hunsaker2019-03-181-0/+1
| | | | | | | | | | | | | | | | When running `sosreport -l`, or the more specific --list-* options, sos still creates a temp directory and log files, however we were not cleaning those up - so over time we could have a multitude of sos temp directories littering the filesystem. Now always cleanup the temp directory after execution. Only exception to this would be if we hit an OSError during execution _and_ the debug option is specified. Resolves: #1456 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [filesys] Use the correct interface when calling dumpe2fsXuewei Zhang2019-03-181-1/+1
| | | | | | | | | | dumpe2fs takes one parameter indicating the device to be dumped. Closes: #1452 Resolves: #1453 Signed-off-by: Xuewei Zhang <xueweiz@google.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openvswitch] Collect also offloaded flowsPavel Moravec2019-03-181-0/+2
| | | | | | | | | | Dump also any offloaded hardware flows by colling: ovs-dpctl dump-flows type=offloaded -m Resolves: #1450 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [policies] Detect CentOS distribution without D/S patchesMiguel Angel Ajo2019-03-181-1/+13
| | | | | | | | | | | | | | This partially fixes issue #1264 by handling the CentOS and CentOS Atomic hosts, partially based on the CentOS packaging patch [1]. Without this patch, if you try to develop sosreports on a CentOS host, you will get an empty list of plugins. [1] https://git.centos.org/blob/rpms!sos.git/c7/SOURCES!sos-3.4-centos-branding.patch Resolves: #1447 Signed-off-by: Miguel Angel Ajo <majopela@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [pacemaker] leave CIB file collection to crm_reportKen Gaillot2019-03-181-3/+0
| | | | | | | | | | | | The plugin previously collected the CIB, which may contain sensitive information, without scrubbing it. While the plugin could scrub it, it will already be collected (scrubbed) by the crm_report command run in setup(), so the plugin's collection is redundant and can be removed. Resolves: #1444 Signed-off-by: Ken Gaillot <kgaillot@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [pacemaker] only run pcs commands on systems that support itKen Gaillot2019-03-181-5/+2
| | | | | | | | | | pcs commands should be run in pcs_setup() rather than setup(), so they are only called on distributions that ship pcs Related: #1444 Signed-off-by: Ken Gaillot <kgaillot@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [kubernetes] improve parsing namespacesPavel Moravec2019-03-181-1/+3
| | | | | | | | | Handle (theoretical) cases when "kubectl get namespace" returns a line with white characters only, and prevent IndexError to be raised. Resolves: #1442 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [openstack_nova] list all non-admin instances tooMiguel Angel Ajo2019-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | The current command in the openstack_nova.py plugin $ nova list Returns an incomplete list of instances when called as administrator, which results in incomplete sosreports. The right command to use to get a complete list of instances is: $ nova list --all-tenants Closes: #1439 Resolves: #1440 Signed-off-by: Miguel Angel Ajo Pelayo <majopela@redhat.com> Signed-off-by: Assaf Muller <amuller@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [lustre] Collect ring buffer dumps on all_logsNathaniel Clark2019-03-181-0/+4
| | | | | | | | | | | Collect emergency dumps of the lustre ring buffer if all_logs is set. These files are dumps of the Lustre ring buffer, that are dumped under certain conditions Resolves: #1436 Signed-off-by: Nathaniel Clark <Nathaniel.Clark@misrule.us> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [plugins] Add new plugin cifsPierguido Lambri2019-03-181-0/+30
| | | | | | | | | This collects few configuration files and cifs data. Resolves: #1434 Signed-off-by: Pierguido Lambri <plambri@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openvswitch] Add FDB bridge statisticsEelco Chaudron2019-03-181-1/+2
| | | | | | | | | Add the ovs-appctl fdb/stats command for each bridge. Resolves: #1431 Signed-off-by: Eelco Chaudron <echaudron@gmail.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [systemd] Add 'systemctl list-jobs' to systemd pluginHATAYAMA Daisuke2019-03-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the output of 'systemctl list-jobs', providing a list of jobs that are in progress. This is sometimes useful when we try to analyze troubles such as some units are unexpectedly not started/stopped. For example, consider there is the inquiry from some customer that multi-user.target on our system is configured as default.target but is still inactive after system boot, why? # LANG=C systemctl get-default multi-user.target # LANG=C systemctl status multi-user.target * multi-user.target - Multi-User System Loaded: loaded (/usr/lib/systemd/system/multi-user.target; \ enabled; vendor preset: disabled) Active: inactive (dead) Docs: man:systemd.special(7) In such case, systemctl list-jobs gives us the clear suggestion that there is a still running start job for foobar.service and multi-user.target and the other units are waiting for it to finish. # LANG=C systemctl --no-pager list-jobs JOB UNIT TYPE STATE 112 multi-user.target start waiting 226 systemd-update-utmp-runlevel.service start waiting 258 foobar.service start running 236 systemd-readahead-done.timer start waiting 4 jobs listed. Resolves: #1427 Signed-off-by: HATAYAMA Daisuke <d.hatayama@jp.fujitsu.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [kubernetes] Collect additional resourcesJake Hunsaker2019-03-181-2/+9
| | | | | | | | | Adds several resources for 'kubectl get' output. Resolves: #1424 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [origin] Collect deploymentconfigs from additional namespacesJake Hunsaker2019-03-181-2/+19
| | | | | | | | | | | | | | The origin plugin will now collect deploymentconfig output from more than just the 'default' namespace. Now it will collect from 'default', 'openshift-web-console', and 'openshift-ansible-broker' by default and a new 'all-namespaces' option has been added to allow deploymentconfig collection from all existing namespaces. Closes: #1410 Resolves: #1423 Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_glance] fix typo from commit 2b29530Pavel Moravec2019-03-181-1/+1
| | | | | | | | false -> False Resolves: #1420 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>