aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [mysql] limit log collection and add support for MariaDBBryn M. Reeves2014-06-231-7/+16
| | | | | | | | | | Add support for the MariaDB fork of MySQL. Since a MySQL or MariaDB instance may have very large log files under /var/log/{mysql,mariadb}. For now restrict log collection to the main demon log. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [mysql] clean up plugin variable use and package listsBryn M. Reeves2014-06-231-6/+12
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [anaconda] elide passwords in kickstart user directivesBryn M. Reeves2014-06-211-3/+10
| | | | | | | | E.g.: useradd --password '$6$oIW3o2Mr$XbWZKaM7nA.cQqudfDJScupXOia5h1u517t6Htx/Q/MgXm82Pc/OcytatTeI4ULNWOMJzvpCigWiL4xKP9PX4.' test Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [distupgrade] elide passwords in /root/preupgradeBryn M. Reeves2014-06-211-1/+18
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ipa] add ipa-replica-manage outputBryn M. Reeves2014-06-211-0/+5
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sar] minor style fixesBryn M. Reeves2014-06-211-4/+7
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [cluster] collect gfs2 withdraw fileBryn M. Reeves2014-06-211-1/+2
| | | | | | Collect /sys/fs/gfs2/*/withdraw. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [hardware] remove obsolete up2date_client hardware callsBryn M. Reeves2014-06-201-20/+1
| | | | | | | | Remove the calls to up2date_client's Hardware module and simplify the plugin so we support Red Hat, Debian and Ubuntu from a single module. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [auditd] improve log size limitingBryn M. Reeves2014-06-201-6/+13
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [cups] improve log size limitingBryn M. Reeves2014-06-201-7/+16
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [selinux] pass --input-logs when calling ausearchBryn M. Reeves2014-06-201-1/+1
| | | | | | | | | If ausearch is run without a tty it expects log data to be fed on stdin. This causes the selinux plugin to appear to hang when run e.g. over an ssh session. Force the command to use the logs defined in auditd.conf by specifying --input-logs. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [nfsserver] add output of 'exportfs -v'Bryn M. Reeves2014-06-191-1/+3
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openshift] fix plugin_nameBryn M. Reeves2014-06-181-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [sar] remove LANG=C use from sar pluginBryn M. Reeves2014-06-181-1/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ctdb] Add plugin for Samba clustered databasesBryn M. Reeves2014-06-171-0/+49
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ovirt] add ovirt-scheduler-proxy logsBryn M. Reeves2014-06-171-0/+1
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [samba] collect additional filesBryn M. Reeves2014-06-171-2/+11
| | | | | | | | | | | Add some additional files to the samba plugin and switch from collecting whole directories (e.g. /etc/samba, /var/log/samba) to collecting individual named files within those directories. This gives more predictable behaviour and more manageable default report sizes. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [qpid] update of qpid pluginPavel Moravec2014-06-161-9/+18
| | | | | | resolves issue #308 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [hpasm] new pluginBryn M. Reeves2014-06-131-0/+33
| | | | | | Collect information for hp Server Management Drivers and Agent. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [global] bump release to 3.2-alpha13.2alpha1Bryn M. Reeves2014-06-121-2/+2
| | | | | | | | | | We still have a number of issues to resolve before 3.2 but we're making good progress (albeit a little overdue). Let's tag the current tree as an alpha release so that development distributions (e.g. Fedora rawhide / Debian unstable) can package it and get more testing. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [haproxy] new pluginBryn M. Reeves2014-06-101-0/+30
| | | | | | | | | Add a plugin for HAProxy, based on a suggestion from Brandon Perkins in rhbz#1107865. Fixes #303. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ipvs,keepalived] fix misleading copyright headerBryn M. Reeves2014-06-102-2/+0
| | | | | | | I've been using firewalld.py as a template for new plugins; forgot to fix the copyright header to have the correct authorship. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [keepalived] new pluginBryn M. Reeves2014-06-101-0/+33
| | | | | | Fixes #302. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ipvs, cluster] new plugin for IP virtual serverBryn M. Reeves2014-06-102-1/+33
| | | | | | | | | | Remove the ipvsadm command collection from the cluster plugin and put it in it's own plugin. Also collect connection entries with 'ipvsadm -Lc'. Fixes #302. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [networking] add biosdevname outputBryn M. Reeves2014-06-091-1/+2
| | | | | | Suggested by Bryan Quigley. Fixes #299. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Remove duplicate Neutron pluginBryn M. Reeves2014-06-092-249/+153
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [landscape] fix file list and formattingBryn M. Reeves2014-06-081-41/+5
| | | | | | Fixes #261. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ldap] Fix do_cmd_output_sub() useBryn M. Reeves2014-06-081-2/+4
| | | | | | Fixes #179. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [docker] new pluginBryn M. Reeves2014-06-061-0/+40
| | | | | | | | | | Add basic support for docker-io: https://www.docker.io/ Fixes #263. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [firewalld] new pluginBryn M. Reeves2014-06-061-0/+38
| | | | | | | | | Add support for firewalld on Red Hat based distributions. Based on a patch to networking.py from Jamie Bainbridge. Fixes #292. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [systemtap] collect stap-reportFrank Ch. Eigler2014-06-061-1/+2
| | | | | | | | Invoke stap-report to collect more stap-focused kernel/environmental information. Signed-off-by: Michele Baldessari <michele at acksyn.org> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [xen] replace os.popen() with self.call_ext_prog()Bryn M. Reeves2014-06-061-1/+1
| | | | | | Fixes #288. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [archive] fix whitespace in _build_archive() commentBryn M. Reeves2014-06-061-1/+1
| | | | | | stokachu++ Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [archive] Use OSError instead of PermissionErrorBryn M. Reeves2014-06-061-3/+3
| | | | | | | | | | The PermissionError exception is a python3 feature. Instead catch the OSError (from which it inherits) to work on both py2 and py3 runtimes. Related: #164 Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Record duration of calls to external programs at debug levelBryn M. Reeves2014-06-061-0/+2
| | | | | | | | | | | | | | | The old profiling report was removed in favour of using external profilers like cProfile. This is useful for overall profiling and identifying code hotspots but is less helpful for drilling down to the collection of individual items. Since running programs is the dominant cost on typical hosts log the time taken to run each call and tag it with the binary name. This allows looking at the per-call and per-command cost across a run of sosreport. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [pcp] Convert to use add_copy_specs() and fix option formattingBryn M. Reeves2014-06-061-15/+18
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Initial PCP (Performance Co-Pilot) pluginMichele Baldessari2014-06-061-0/+162
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This plugin will collect all data relevant to PCP. Namely, it will parse /etc/pcp.conf and then collect the following: $PCP_SYSCONF_DIR $PCP_VAR_DIR/config (we explicitely avoid $PCP_VAR_DIR/config/ {pmchart,pmlogconf,pmieconf,pmlogrewrite} as in 99% of the cases they are just copies from the rpms. $PCP_VAR_DIR/pmlogger/`hostname` (if it exists and if its size is < 100MB by default. Unless option 'all_pcplogs' is specified) $PCP_LOG_DIR/pmcd $PCP_LOG_DIR/NOTICES* $PCP_LOG_DIR/pmns $PCP_LOG_DIR/*/*.log $PCP_LOG_DIR/*/*.log* $PCP_LOG_DIR/*/config* Output of command 'pcp' to get the current status of the PCP infrastructure. The set of collected files has been discussed on the PCP mailing list: http://mail.performancecopilot.org/pipermail/pcp/2014-April/004770.html Signed-off-by: Michele Baldessari <michele at acksyn.org> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [policy] Rename preferred_archive_name()Bryn M. Reeves2014-06-062-2/+2
| | | | | | | The preferred_archive_name() policy method returns a class, not a name. Rename it to 'get_preferred_archive()'. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [networking] Add NetworkManager nmcli supportjbainbri2014-06-051-1/+14
| | | | | | | Fixes Issue #293. Signed-off-by: Jamie Bainbridge <jamie.bainbridge@gmail.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ovirt] Add dwh and reports packages to plugin package listBryn M. Reeves2014-06-051-1/+5
| | | | | | | | | Allows the plugin to collect data on standalone dwh and reports installations. Related: Issue #236, Issue #237 Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Add reports support to oVirt pluginBryn M. Reeves2014-06-051-0/+1
| | | | | | | | Based on a patch for sos-2.0 by Sandro Bonazzola. Fixes Issue #237. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Add oVirt Data Warehouse supportBryn M. Reeves2014-06-051-3/+5
| | | | | | | Add support for DWH to the oVirt plugin. Based on a patch for sos-2.0 by Sandro Bonazzola. Fixes Issue #236. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ovirt] add package list to ovirt pluginBryn M. Reeves2014-06-051-0/+2
| | | | | | | | | | Make sure that the oVirt plugin only runs if the ovirt-engine package is present. This will need to be expanded when the ovirt-engine-dwh and ovirt-engine-reports support is merged (Issue #236 and Issue #237). Signed-off-by: Brym M. Reeves <bmr@redhat.com>
* [ovirt] elide passwords in logcollector.confBryn M. Reeves2014-06-051-0/+6
| | | | | | | | | | | This configuration file may contain passwords of the form: And: Add these to the existing 'passwd_files' processing added in commit 3da5697. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [ovirt] elide passwords in {iso,image}uploader.confBryn M. Reeves2014-06-051-0/+12
| | | | | | | | These two configuration files may contain passwords of the form: Add do_file_sub() calls to the plugin's postproc to remove these. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Elide passwords in grub2 pluginBryn M. Reeves2014-06-031-0/+31
| | | | | | | | | | Remove both plaintext and pbkdf2 passwords from grub configuration files and command output. Since grub does not mandate any particular location for its authentication data we have to apply these liberaly (to all grub*.cfg as well as to all /etc/grub.d fragments and the output of grub2-mkconfig). Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Make sure grub password regex handles all casesBryn M. Reeves2014-06-021-2/+2
| | | | | | | | | | | | | | | | | | | | The regex to match passwords in grub.conf needs to handle both the --md5 and non-md5 cases and to apply the substitution only to the secret part (password or password hash). This needs to deal with the fact that python will return 'None' for unmatched pattern groups leading to an exception in re.subn() if not all referenced groups match for a given string (in contrast to e.g. the perl approach of treating these groups as the empty string). Make this explicit by using an empty alternate in the possibly unmatched '--md5' group: r"(password\s*)(--md5\s*|\s*)(.*)", r"\1\2********" Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Elide bootloader password in grub pluginBryn M. Reeves2014-06-021-0/+7
| | | | | | | | | The grub.conf configuration file collected by the grub plugin may contain a plaintext or md5 hashed bootloader password. Add a regex substitution for all files matching '.*\/grub\.conf' and replace the password with '*'s. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Make do_path_regex_sub() honour string regex argumentsBryn M. Reeves2014-06-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Plugin.do_path_regex_sub() method to apply regex substitutions to paths matching a pattern documents that it accepts either a compiled re object or a regular expression as a string: '''Apply a regexp substituation to a set of files archived by sos. The set of files to be substituted is generated by matching collected file pathnames against pathexp which may be a regular expression string or compiled re object. The portion of the file to be replaced is specified via regexp and the replacement string is passed in subst.''' It lies. Attempting to pass a string for the 'pathexp' parameter will result in: Traceback (most recent call last): File "/usr/sbin/sosreport", line 23, in <module> main(sys.argv[1:]) File "/usr/lib/python2.6/site-packages/sos/sosreport.py", line 1229, in main sos.execute() AttributeError: 'str' object has no attribute 'match' > /usr/lib/python2.6/site-packages/sos/plugins/__init__.py(219)do_path_regex_sub() -> match = pathexp.match Look to see if the object we are passed has a 'match()' method and call re.compile on it if it does not. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* Fix call_ext_prog() use in abrt, s390, veritas, xen and yumBryn M. Reeves2014-06-025-11/+12
| | | | | | | | Several plugins still tried to use the old tuple based return values for self.call_ext_prog(). Convert them to use the dictionary values instead. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>