aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [processor] Capture output of the command "cpufreq-info"Shane Bradley2016-03-071-1/+2
| | | | | | Fixes: #790 Signed-off-by: Shane Bradley <sbradley@redhat.com>
* [dnf] New dnf pluginSachin2016-02-181-0/+63
| | | | | | | | | | | | | Added dnf plugin to collect: - dnf.conf file from /etc/dnf/ - dnf logs from /var/log/ - dnf version info - dnf history - List installed dnf plugins Resolves: #768. Signed-off-by: Sachin Patil <sacpatil@redhat.com>
* [virsh] use read-only option to list all domainsGermano Veit Michel2016-02-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | If authentication is required to use virsh, sos will timeout on 'virsh list --all'. Use '-r' option to avoid this. 2016-02-10 00:24:02,761 WARNING: [plugin:virsh] command 'virsh list --all' timed out after 300s $ virsh list --all Please enter your authentication name: Please enter your password: error: failed to connect to the hypervisor error: no valid connection error: authentication failed: Failed to step SASL negotiation: -1 (SASL(-1): generic failure: All-whitespace username.) $ virsh -r list --all Id Name State ---------------------------------------------------- Fixes: #761. Signed-off-by: Germano Veit Michel <germano@redhat.com>
* [sosreport] fix capitalisation of --no-report help messageamitg.b14@gmail.com2016-02-121-1/+1
| | | | | | | Closes:#730 Signed-off-by: Amit Ghadge <amitg.b14@gmail.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] fix whitespace in load_plugins()Bryn M. Reeves2016-02-121-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] do not include empty profiles in --list-profilesBryn M. Reeves2016-02-121-2/+4
| | | | | | | | | | If a profile has no usable plugin do not add its profiles to the list of available profiles and do not include them in the output of --list-profiles or --list-plugins. Fixes: #764. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] push common code into _report_profiles_and_pluginsBryn M. Reeves2016-02-121-4/+2
| | | | | | | There's no point having both callers bracket the call with lines that output a single blank line: do this all in the method itself. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] fix '0 plugins' output in profile listingsBryn M. Reeves2016-02-121-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When sosreport prints a profile listing as a result of the user selecting a non-existent profile we currently output a profile list (no plugin names) that ends with the standard summary of profiles and plugins: # sosreport -vv --batch --profile qux set sysroot to '/' (default) sosreport (version 3.2) Unknown or inactive profile(s) provided: qux The following profiles are available: boot cluster [...] system virt webserver 28 profiles, 0 plugins This is less than useful and confusing for users (who shouldn't have to care about how we manage this stuff internally). Change this to only include the ", N plugins" part of the text if we have actually loaded some valid plugins for the active profile and factor out common display code in list_plugins and list_profiles. Fixes: #733. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [networking] use -W for netstat -agnBryn M. Reeves2016-02-101-4/+8
| | | | | | | | | | The 'netstat -agn' command reports IPv4 and IPv6 group addresses which may also be truncated - apply the -W/-T switch to this command as well. Related: #734. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [networking] disable netstat output truncationBryn M. Reeves2016-02-101-1/+15
| | | | | | | | | | | | | | By default netstat will truncate addresses that are wider than the current column width. Disable this to ensure that all IPv6 addresses can be captured in full. On Red Hat a non-upstream option (-T) was added to versions prior to 2.0 - handle these version checks in the RedHatNetworking class and set the appropriate option for each. Fixes #734. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [monit] Correct the monit plugin profile list.amitg.b14@gmail.com2016-02-081-1/+1
| | | | | | Correct profiles = ('system',) Closes:#747
* [setup] fix RPM distutils buildsBryn M. Reeves2016-02-051-6/+12
| | | | | | | | Fix the summary field to not contain embedded newlines and work around a bug in distutil's handling of gzipped man pages in setup.py. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sos] fix version stringBryn M. Reeves2016-02-051-1/+1
| | | | | | Fix the version string in the sos package __init__.py. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [policies] add SuSE policyBryn M. Reeves2016-02-052-0/+119
| | | | | | | | | | | | | | | | Add a basic policy class for SuSE distributions and implement a simple OpenSuSE policy (currently this will work with any SuSE release). A new SuSEPlugin tagging class is introduced for SuSE-specific plugin cases. The policy currently also allows the RedHatPlugin tagging class to run: this quickly enables a large number of plugins for the distribution but will require manual testing to identify cases where a dedicated SuSEPlugin must be created. Fixes #523. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [cgroups] collect systemd-cgls outputPavel Moravec2016-02-051-0/+3
| | | | | | Resolves #731, #732. Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [sosreport] Added help message for list-profilesAbhijeet Kasurde2016-02-051-1/+3
| | | | | | Fixes: #726. Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* [networking] check for nmcli warning messagesBryn M. Reeves2016-02-051-0/+4
| | | | | | | | | | The nmcli command may print warning messages if the version of the tool does not match the running daemon: filter these warnings out of the list of connections or devices to check. Fixes: #710. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [networking] get summary of traffic per interface (ip -s link)Pavel Moravec2016-02-051-1/+1
| | | | | | Resolves: #712, #714 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [networking] blacklist Cisco CDP pathsBryn M. Reeves2016-02-051-0/+3
| | | | | | | | | | Cisco CDP products include a kernel module that presents several large pseudo files in /proc and /sys. Blacklist these locations to avoid attempting to read the content into reports. Fixes #740. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [rpm] make rpm.rpmva work without --verifyBryn M. Reeves2016-02-051-1/+1
| | | | | | | | | | | | | | | When the global verify switch was introduced the behaviour of the historical 'rpm.rpmva' plugin option was made to depend on the global setting: without --verify no verification is carried out even though it is clear this is not what the user intended. Allow verification to take place in the rpm module if the rpm.va option is True, regardless of the setting of the global --verify option. Fixes #735. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] Added error handling in Config ParsingAbhijeet Kasurde2016-02-051-5/+12
| | | | | | Closes: #739. Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* [ipa] Capture more cert information and other fixesShane Bradley2016-02-051-11/+21
| | | | | | | | | | | | More cert information is captured, the "ipa-replica-manage" commands removed because they would timeout because a password was needed, sanitize some collected data, and some logs with wildcards were not properly collected is now fixed. Fixes: #754, #755. Signed-off-by: Shane Bradley <sbradley@redhat.com>
* [omsa] Include output from chassis biossetup and summaryBill Yodlowsky2016-02-051-0/+2
| | | | | | | | | The output from 'omreport chassis biossetup' identifies a system's power profile, which is very handy when troubleshooting performance issues. Closes: #725 Signed-off-by: Bill Yodlowsky <byodlows@redhat.com>
* [omsa] add new plugin for Dell PowerEdge systemsBryn M. Reeves2016-02-031-0/+52
| | | | | | | | | | | Add plugin to collect logs and hardware health from Dell OpenManage Server Administrator (OMSA). Dell OMSA is an OS application used to manage Dell PowerEdge Server hardware. Signed-off-by: Charles Rose <charles_rose@dell.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ipmi] add new pluginBryn M. Reeves2016-02-031-0/+39
| | | | | | | | | | | | | | | | | Add a plugin to collect hardware data from IPMI-enabled hosts: ipmitool sel info ipmitool sel log ipmitool sensor list ipmitool chassis status ipmitool fru print ipmitool bmc info ipmitool sdr info Fixes: #756. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [logs] collect journalctl --disk-usagePavel Moravec2016-02-011-0/+1
| | | | | | Resolves: #750 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [rpm] move extra rpm fields to a separate fileBryn M. Reeves2016-02-011-7/+22
| | | | | | | | | | | | | | | | | | | | | | | The installed-rpms file is intended as a quick list of all installed packages for distributions using the RPM package manager: the contents have been fairly stable over several major releases and are formatted to be human-readable in a standard 80x25 terminal without needing to filter or sort. The addition of several large fields over the last year has led to some significant bloat however: python-ply-3.6-2.fc23.noarch Thu Oct 8 10:55:19 2015 1444298119 Fedora Project buildvm-09.phx2.fedoraproject.org 89021503050055d3387032474cf834ec9cba0108f41f10009231fd54252a459cabaccf2b68f39b7f2ab5474c0f29906494593c58808f4ebcc9cb1910921ddfd0fcd02c8b394af5f07915166499eff319d128fae9850363ffb5d7977adfa5c2b298ec1818975c16dd95721d0a6e3a5fd1de8bcb3d871e5a1bf2b2d39a15c1c53c5936863835e944e4a087bb982448420d852557fcfc81965ea2ecd7d9b1d6783d4e2bd2a57418ebe4ca92e1fec47c8b78864fd3fa81bab4b5766c04f92af7fd61452ad0063211edf390e075393ee3f6e019593bb230c29f134d1511c719ade1dd533db787c8e79ee77219bd8415a821bdb4e516e3c44e6fa9d25627e5157f1460a3599a183b1579077a51651fc34a734ee67a63bdeae42dbaf8429bc73543938cc86e8a92150e6c2de9bd7db1ae84d4938399388a445d0dfc0410b3c7f0c50399fb85ea8ec5c64e4138111bf394188b65f0e8013ed4a23f2973df663c4811ff02312cd57e3293fcc728d6d6c9951351fd0cfea1a6d4e90d5ff38be4858eb7f308efa5793f3955d641baf6cdc5495cfba0228e03af8bde85ffbb955766c6e31c6cbffe40539ca794806515198f44176680c17431720f4de00c4bf695dc54c53225698b45d8ac5b139e46503015f2456b420aeb5fab9a7cef12abd7308e410687771ba644b10ae680c21cacc40c71c5ab0159c2e021931695dee20bdc9d9c957e097c9a800634b88d60ad9c0a554bac3a5ca97b0f63538b9808 RSA/SHA256, Tue Aug 18 14:51:44 2015, Key ID 32474cf834ec9cba vs. python-ply-3.6-2.fc23.noarch Thu Oct 8 10:55:19 2015 Revert the installed-rpms file back to the original format and add a new file, package-data in the rpm plugin's commands directory that contains these additional rpm query fields. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [utilities] Support glob expansion in command argumentsShane Bradley2016-02-011-1/+10
| | | | | | | | | | | | | | | | | | | | | Historically, when calling an external process, sos relied on the use of a shell to perform glob expansion on arguments passed to the command. This potentially exposes sos and its children to the entire gamut of shell expansion and all the problems associated with it and this is part of the reason that use of a shell in callouts was disabled in commit 46b6c3d (Issue #253). While full shell syntax is undesirable for many reasons the use of globs to express path arguments to external commands is very useful and widely applied: restore this limited support for shell-like syntax using the python glob.glob module and expand any argument that is a valid glob into its resulting arguments. Fixes: #752 Signed-off-by: Shane Bradley <sbradley@redhat.com>
* [archive] remove hand-rolled compression shell outBryn M. Reeves2016-02-011-12/+9
| | | | | | | | | | The archive classes are not special snowflakes: they do not need their own (buggy) version of sos_get_command_output(): replace the hand-rolled Popen() call with the sos.utilities version. Really Fixes: #742. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Merge pull request #744 from sosreport/sbradley-rhn_managled_passwordshane bradley2016-01-221-2/+2
|\ | | | | [redhat] A managled rhn systemid will crash sosreport.
| * [redhat] A managled rhn systemid will crash sosreport.Shane Bradley2016-01-221-2/+2
|/ | | | | | Fixes: #742 Signed-off-by: Shane Bradley <sbradley@redhat.com>
* [openvswitch] gather database in 'list' formatBryn M. Reeves2016-01-151-1/+1
| | | | | | | | | | | This changes database dump collection format to 'list' which is a more readable and easy to parse. Based on a change suggested by Prasad Mukhedkar. Resolves: #676. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [utilities] remove unused hashlib importAbhijeet Kasurde2016-01-141-1/+0
| | | | Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* [sosreport] report correct final path with --buildBryn M. Reeves2016-01-131-1/+3
| | | | | | | Ensure the correct path (in the system temporary directory) is reported when the --build option is used. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openshift] Obfuscate LDAP bind passwordsPep Turró Mauri2015-12-181-0/+5
| | | | | | | | | | | | OpenShift broker and console can be configured with different authentication backends. If LDAP is being used with a server that requires authentication for search the configuration files will capture the credentials of the BindDN. Fixes: rhbz#1227462 Fixes: #673. Signed-off-by: Pep Turró Mauri <pep@redhat.com>
* [powerpc] fix missing commas in copy spec listMartin Frodl2015-12-181-2/+2
| | | | | | Fixes: #671. Signed-off-by: Martin Frodl <mfrodl@redhat.com>
* [ovirt] Remove database password from AAA_JDBC profile filesNijin Ashok2015-12-181-1/+2
| | | | | | | | | | | | | | | | | Ovirt AAA_JDBC stores database password in plain text under /etc/ovirt-engine/aaa/*.properties file. It contains password in the format: config.datasource.dbpassword=<password> The engine PostgreSQL user password and the custom build domain's user password exist in plain text format in these files. The commit removes these password from the sosreport. Fixes: #666. Signed-off-by: Nijin Ashok <nashok@redhat.com>
* [apache] fix files list styleBryn M. Reeves2015-12-181-3/+5
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [apache] collect list of modulesPavel Moravec2015-12-181-0/+4
| | | | | | | | Collect output of "apachectl -M" for that Resolves: #691 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [md] Add collection of per-device and global device parametersKenneth Koski2015-12-181-1/+3
| | | | | | | | | | | | | | For more information about these parameters, see the md man page: http://linux.die.net/man/4/md The kernel.org documentation also has some information about these parameters: https://www.kernel.org/doc/Documentation/md.txt Fixes #700. Signed-off-by: Kenneth Koski <mechaxl@gmail.com>
* [apache] Added collection for JBoss Web ServerHisanobu Okuda2015-12-161-3/+28
| | | | Signed-off-by: Hisanobu Okuda <hokuda@redhat.com>
* [haproxy] Collect /etc/haproxy/conf.d/*Michele Baldessari2015-12-141-0/+1
| | | | | | | | | | Some openstack installations split out the configuration files via an "include conf.d/*.cfg" directive. Add the whole directory in order to collect that as well. Fixes: #674. Signed-off-by: Michele Baldessari <michele@acksyn.org>
* [sosreport] clean up private temporary directoryBryn M. Reeves2015-12-101-1/+6
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [multipath] collect output of 'multipathd show config'Bryn M. Reeves2015-12-081-1/+2
| | | | | | Resolves: #697. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] prepare report in a private subdirectoryBryn M. Reeves2015-12-041-23/+77
| | | | | | | | | | | | | | | | | | | | | | | To avoid file creation races in shared temporary directories like /tmp and /var/tmp use a private (0700) subdirectory to build the FileCacheArchive and subsequent archive and compressed archive files: only create a file in the containing directory when it can be done as a single atomic rename. This prevents sos from writing to an arbitrary location under the control of another user: a malicious user could steal data or over write files in /etc resulting in a local privilege escalation. There remains a further race since once the archive name is known the checksum file name becomes predictable: as the checksum file is also prepared in the subdirectory and moved into place the result is always either success or an error that is reported to the user. The correct checksum value is still reported to the user via the terminal. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sosreport] move archive checksumming to sosreportBryn M. Reeves2015-12-042-22/+26
| | | | | | | | | | | | | | | | Although the digest algorithm is policy controlled the actual mechanism to checksum the archive does not belong in the policies module: historically this was done to keep the code that calculates the checksum close to the UI code that reports it. Move the calculation to the main SoSReport class's final_work() method and add a 'checksum' argument to the display_results() method so that the value can be reported. In future it may make sense to push the checksum code directly into the archive class. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [policies] refactor Policy.display_results() argsBryn M. Reeves2015-12-042-13/+23
| | | | | | | | | Pass explicit archive and build directory arguments to the Policy.display_results() method rather than a single path name argument and a boolean to indicate whether it is an archive file or a build directory path. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [policies] move hash determination to policiesBryn M. Reeves2015-12-043-20/+16
| | | | | | | | | | | | | It's crazy having the Policy classes call a function in the utilities module only to have that function then load the Policy module, call policy.get_preferred_hash_algorithm() and then test the result. Get rid of the get_hash_name() function in the utilities module and simplify the calls in the policies module to obtain the preferred hash name. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [build-rpm] fix rpm build for sphinx docs directoryBryn M. Reeves2015-12-041-1/+2
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ceph] Collect (parts of) /var/lib/ceph and /var/run/cephPavel Moravec2015-11-271-1/+6
| | | | | | | | | | Collect the two directories without some forbidden paths. Reorder self.add_forbidden_path(..) to have some logical ordering there. Resolves: #693 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>