aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [gnocchi] New Gnocchi pluginSachin Patil2017-02-241-0/+59
| | | | | | | | | | | | | | | | | All files are collected under '/etc/gnocchi/' Output of following commands will be collected provided proper environment varibles(OS_USERNAME, OS_PASSWORD, OS_TENANT_NAME) are set: - `gnocchi --version` - `gnocchi status` - `gnocchi capabilities list` - `gnocchi archive-policy list` - `gnocchi resource list` - `gnocchi resource-type list` Closes-Bug: #678 Signed-off-by: Sachin Patil <psachin@redhat.com>
* [numa] collect basic numa info from /sys by defaultLukas Herbolt2017-02-241-0/+7
| | | | | | | Resolves: #865. Signed-off-by: Lukas Herbolt <lherbolt@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [salt, saltmaster, storageconsole] add plugins for RH Storage Console and saltHarald Klein2017-02-213-0/+145
| | | | Signed-off-by: Harald Klein <hari@vt100.at>
* [libvirt] collect more info for KVM hostsPavel Moravec2017-02-211-1/+10
| | | | | | | | | | Collect whole /var/run/libvirt, excluding some secrets. For PIDs in libvirt PID files, collect some /proc/$PID/ info. Resolves: #937 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [corosync] collect user defined logs from corosync.confPavel Moravec2017-02-211-0/+12
| | | | | | | | | corosync.conf often overwrites default log locations, let collect the user defined ones as well Resolves: #924. Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [pcp] delete three warn logsPavel Moravec2017-02-211-7/+0
| | | | | | | | | Statements of the logs are evident from the plugin's code, therefore the logs are redundant. Esp. on warn level. Resolves: #923 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [sosreport] fix line length regression (a2dc734)Bryn M. Reeves2017-02-201-1/+2
| | | | | | Fix a pep8 regression introduced in commit a2dc734. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [npm] collect config listsPavel Moravec2017-02-201-0/+5
| | | | | | | | Collect npm config list (globally and per-project). Resolves: #917 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [npm] use standard suggest_filename patterns in add_cmd_outputPavel Moravec2017-02-201-3/+3
| | | | | | Replace "-" by "_" in resulting filenames. Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [sosreport] clarify in man and help that --logsize is in MiBPavel Moravec2017-02-202-2/+2
| | | | | | | | | Neither sosreport --help or man pages specify the units of --logsize parameter. Let it clarify. Resolves: #916 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [auditd] collect auditctl -sPavel Moravec2017-02-201-1/+4
| | | | | | | | collect report status of auditctl Resolves: #913 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [subscription_manager] collect /var/lib/rhsm/Pavel Moravec2017-02-201-0/+1
| | | | | | | | | The directory contains usefull info about subscription status and facts the RHSM server gets from this client. Resolves: #912 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [abrt] replace all failing commandsPavel Moravec2017-02-201-14/+9
| | | | | | | | | Fixing all abrt-cli calls since none further has proper arguments, causing none call returns a valuable output. Resolves: #911 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [sosreport][regression] --tmp-dir on NFS raises uncaught exceptionPavel Moravec2017-02-201-4/+3
| | | | | | | | | logging has to be shut down after the final archive is created, since archive class prints logs during the archive creation. Resolves: #909 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [general] close unused file descriptors of temp.filesPavel Moravec2017-02-201-1/+2
| | | | | | | | | tempfile.mkstemp call opens a new FD that is redundantly left intact until sosreport shutdown. Let close it (added minor fix to avoid TOCTOU race - bmr). Signed-off-by: Pavel Moravec <pmoravec@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [firewalld] collect *.xml configsPavel Moravec2017-02-201-1/+2
| | | | | | | | | | Collect /etc/firewalld/*.xml (and firewalld.conf) instead of *conf. Issue #854 has a typo talking about *.conf instead of *.xml. Resolves #933 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [archive] compress tarball without a timeoutPavel Moravec2017-02-201-1/+2
| | | | | | | | | Compressing tarball uses default 300s timeout, while sosreports with large data or random content can require more time to xz/gz the tarball. Resolves: #910 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [docker] Capture cert, network, sizing and stats dataJake Hunsaker2017-01-191-2/+31
| | | | | | | | | | | | | | | | | Captures a directory listing of /etc/docker to show the cert structure for the daemon. Now captures network listing and inspect details for configured docker networks. Adds a new 'size' option that when enabled captures 'ps -as' output. This is disabled by default as this could be very slow for hosts with large containers. Now captures output from 'docker stats' for containers running when sos is run. Closes: #901. Signed-off-by: Jake Hunsaker <jhunsake@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [archive] Handle error when adding /dev/null as a nodeLouis Bouchard2017-01-192-1/+15
| | | | | | | | | | | | | Adding /dev/null as a node will trigger EPERM. This can happen namely when masking systemd units which symlinks to /dev/null. This fix will avoid a stacktrace and will generate a INFO message about it. Test for that situation is also included. Resolves: #893. Signed-off-by: Louis Bouchard <louis.bouchard@canonical.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [foreman] increase timeout of foreman-debug to 15minutesPavel Moravec2017-01-191-1/+1
| | | | | | | | | foreman-debug (collecting lots of log files and mainly katello task export) often runs longer than the default 5 minutes timeout. Closes: #888. Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [jars] improve option_list formattingBryn M. Reeves2017-01-191-4/+4
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [jars] new plugin: get information about installed JARsMichal Srb2017-01-191-0/+138
| | | | | | | | This plugin collects information about JAR files installed in the standard locations. The information can be later used when debugging problems with missing/different than expected classes on classpath. Signed-off-by: Michal Srb <msrb@redhat.com>
* [canonical_livepatch] use list with add_cmd_output()Bryn M. Reeves2017-01-191-4/+5
| | | | Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [canonical-livepatch] new plugin for livepatching serviceBryan Quigley2017-01-191-0/+33
| | | | | | | | | | Add a new plugin for the Canonical Livepatching service which is Ubuntu specific. We collect: * version * show applied fixes with verbosity up * status info from systemctl Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com>
* [ipa] Handle PKI Directory change and Fedora compatibility fixesJustin Stephenson2017-01-171-8/+54
| | | | | | | | | | | | | | | | PKI-core services in IPA v4 changed the default log file directory for Dogtag related logs, sosreport should check if IPA CA is installed and retrieve useful PKI logs(location is based on IPA version check) Added functions to check if CA is installed and IPA server(RHEL or fedora) is installed. Update packages list to ensure plugin will run on Fedora. Resolves: #883. Signed-off-by: Justin Stephenson <jstephen@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [collectd] new plugin: collectdArchit Sharma2017-01-171-0/+54
| | | | | | | | New module for collecting active plugins info & configurations in collectd. Resolves: #866 Signed-off-by: Archit Sharma <arcsharm@redhat.com>
* [ovirt_hosted_engine] Add new location for vm.conf and broker.confNijin Ashok2017-01-171-0/+2
| | | | | | | | | | | | | | | | | From ovirt 3.6, vm.conf and broker.conf is in the shared storage and not at /etc/ovirt-hosted-engine.The ha engine keeps a local copy of these files under /var/run/ovirt-hosted-engine-ha/ and /var/lib/ovirt-hosted-engine-ha/ which is extracted from the shared storage. Include the new location of vm.conf and broker.conf in the list of files to be collected Signed-off-by: Nijin Ashok <nashok@redhat.com> Signed-off-by: Simone Tiraboschi <stirabos@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes: #833.
* [nfsganesha] Add nfsganesha file server supportSoumya Koduri2017-01-172-1/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Included a plugin to collect the below information about NFS-Ganesha file server provided nfs-ganesha package is installed. Configuration files: "/etc/ganesha/*" "/etc/sysconfig/ganesha" "/var/run/sysconfig/ganesha" Log files: "/var/log/ganesha.log" "/var/log/ganesha-gfapi.log" (used by FSAL_GLUSTER) Output of below commands: -"dbus-send --type=method_call --print-reply" " --system --dest=org.ganesha.nfsd " "/org/ganesha/nfsd/ExportMgr " "org.ganesha.nfsd.exportmgr.ShowExports" Output of below commands is already covered under sunrpc and nfsserver plugins - -"rpcinfo -p localhost" -"showmount -e localhost" Also it is recommended to move FSAL specific configuration files under specific FSAL plugin. Hence added below nfs-ganesha/gluster related config to gluster plugin - -"/var/run/gluster/shared_storage/nfs-ganesha/" (nfs-ganesha configuration) Signed-off-by: Soumya Koduri <skoduri@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes: #386, #858.
* [Grafana] New plugin for visualizing metricsPratik Bandarkar2017-01-171-0/+51
| | | | | | | | | | | | | | | | | | | | | Plugin to capture grafana configuration, logs, and command outputs. configuration: /etc/sysconfig/grafana-server /etc/grafana/ logs: /var/log/grafana/ command outputs: grafana-cli plugins ls grafana-cli plugins list-remote grafana-cli -v grafana-server -v Closes-Bug: #860 Signed-off-by: Pratik Bandarkar <pbandark@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [yum] [dnf] add output of history infoYedidyah Bar David2017-01-172-2/+31
| | | | | | | | | Add a list of installed/erased/updated packages per yum/dnf transaction. Signed-off-by: Yedidyah Bar David <didi@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes: #857.
* [openstack_horizon] do not collect python .pyc and .pyo filesBryn M. Reeves2017-01-171-0/+1
| | | | | | | | Horizon seems to like scattering bits of executable python around /etc/: do not collect these files as we cannot properly perform regex subsitution on them. Closes: #856.
* [openstack_horizon] fix regex in postproc methodPoornima Kshirsagar2017-01-171-1/+2
| | | | | | | | | | | | | | "The regex needs to handle in openstack_horizon: currently the configurations are listed by "/etc/openstack-dashboard/local_settings" causing below errors: regex substitution failed for '/etc/openstack-dashboard/local_settings.d/_11_rcue_theme.pyc' Purposing a fix by changing the regex to match only intended configuration files (*.conf*) in this directory. Signed-off-by: Poornima M. Kshirsagar pkshiras@redhat.com
* [firewalld] Collect all configs under /etc/firewalldPavel Moravec2017-01-171-1/+1
| | | | | | | | Collect all /etc/firewalld/*.conf files, not only firewalld.conf Resolves: #854 Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
* [policies] honour sysroot in OpenSuSEPolicyBryn M. Reeves2017-01-171-2/+2
| | | | | | | | | | | The sysroot paramter is not handled properly by the OpenSuSEPolicy __init__ method: ensure that the method both accepts a sysroot kwarg parameter, and that this is passed on to the superclass's __init__() call. Closes: #877. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [npm] inspect cache of the current user onlyJiri Popelka2016-12-071-30/+33
| | | | | | | | | Use 'npm cache ls' instead of parsing ~/.npm/ Signed-off-by: Jiri Popelka <jpopelka@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes: #899.
* [npm] find modules in npm cacheTomas Tomecek2016-12-071-0/+38
| | | | | | | | | | | | | | | | | | | npm installs modules: 1. globally — so everyone can use those 2. per project If you don't know the path to the project, the only way to see the list of those modules is by traversing the whole filesystem, which is pretty unreal. This patch browses npm cache of every user on the system and saves module names and all available versions into sosreport. Signed-off-by: Tomas Tomecek <ttomecek@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes: #879.
* [networking] blacklist entire /proc/net/eiconBryn M. Reeves2016-12-071-2/+1
| | | | | | | | | | | | The Dialogic Diva out-of-tree driver creates a number of problematic files in /proc/net that return unlimited data on read. The previous attempt to handle this driver left some files exposed (possibly due to a change in the driver): to prevent this, blacklist the entire /proc/net/eicon tree in the networking plugin. Closes: #892. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [plugin] Add polkit libvirt rulesJorge Niedbalski2016-12-071-1/+4
| | | | | | | | | | This commit adds the file /usr/share/polkit-1/rules.d/60-libvirt.rules to the copy specs of the Debian plugin. Signed-off-by: Jorge Niedbalski R. jorge.niedbalski@canonical.com Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes: #894.
* [ctdb] collect /etc/ctdb/nodesMichael Adam2016-12-071-0/+1
| | | | | | | Signed-off-by: Michael Adam <obnox@samba.org> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes: #896.
* [sssd] Retrieve SSSD created krb5 snippetsJustin Stephenson2016-12-021-0/+1
| | | | | | | | | | | | Obtain SSSD automatically-generated krb5 snippet configuration files for localauth plugin, domain_realm mapping, and libdefaults additions. These files are pulled in by libkrb5 with an 'includedir' line in /etc/krb5.conf. Signed-off-by: Justin Stephenson <jstephen@redhat.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Closes #897.
* [ipmitool] use usb interface if availableMukesh Ojha2016-12-021-7/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SOSREPORT generally uses the default interface (/dev/ipmi0) while executing ipmitool command, which is quite slow as compare to usb interface. This usb interface uses the virtual device exposed from BMC like in OpenPower system AMI exposes virtual USB interface. IPMITOOL command with usb interface sends the data to the kernel drivers which inturn sends it to the BMC. This patch enables ipmitool command to use usb interface if available. With this patch: ================ root@ubuntu1604:/home/mukesh/sos# ./sosreport --config sos.conf -o ipmitool sosreport (version 3.2) This command will collect system configuration and diagnostic information from this Ubuntu system. An archive containing the collected information will be generated in /tmp/sos.TF8N8E. For more information on Ubuntu visit: http://www.ubuntu.com/ The generated archive may contain data considered sensitive and its content should be reviewed by the originating organization before being passed to any third party. No changes will be made to system configuration. Press ENTER to continue, or CTRL-C to quit. Please enter your first initial and last name [ubuntu1604]: Please enter the case id that you are generating this report for []: Setting up archive ... Setting up plugins ... Running plugins. Please wait ... Running 1/1: ipmitool... Creating compressed archive... Your sosreport has been generated and saved in: /tmp/sosreport-ubuntu1604-20161130110402.tar.xz The checksum is: adfdbc8475874d7ad1077a3d2eda151b Please send this file to your support representative. root@ubuntu1604:/home/mukesh/sos# tar -xvf /tmp/sosreport-ubuntu1604-20161130110402.tar.xz sosreport-ubuntu1604-20161130110402/ sosreport-ubuntu1604-20161130110402/version.txt sosreport-ubuntu1604-20161130110402/sos_reports/ sosreport-ubuntu1604-20161130110402/sos_reports/sos.txt sosreport-ubuntu1604-20161130110402/sos_reports/sos.html sosreport-ubuntu1604-20161130110402/sos_commands/ sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ipmitool_-I_usb_sel_list sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ipmitool_-I_usb_sdr_info sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ipmitool_-I_usb_chassis_status sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ipmitool_-I_usb_fru_print sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ipmitool_-I_usb_sensor_list sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ipmitool_-I_usb_sel_info sosreport-ubuntu1604-20161130110402/sos_commands/ipmitool/ipmitool_-I_usb_mc_info sosreport-ubuntu1604-20161130110402/sos_logs/ sosreport-ubuntu1604-20161130110402/sos_logs/ui.log sosreport-ubuntu1604-20161130110402/sos_logs/sos.log Signed-off-by: Mukesh Ojha <mukesh02@linux.vnet.ibm.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com> --- Changes in V3: - Forgot to remove import subprocess in the last version. Changes in V2: - Used existing wrapper instead of subprocess. - Removed camelCase for identifier. sos/plugins/ipmitool.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-)
* [samba] if --all-logs is given, collect everything under /var/log/sambaMichael Adam2016-12-011-0/+3
| | | | Signed-off-by: Michael Adam <obnox@samba.org>
* [samba] collect winbind log filesMichael Adam2016-12-011-0/+8
| | | | Signed-off-by: Michael Adam <obnox@samba.org>
* [samba] apply --size-limit to collected log filesMichael Adam2016-12-011-2/+8
| | | | Signed-off-by: Michael Adam <obnox@samba.org>
* [samba] use output of testparm -s without -v instead of with -vMichael Adam2016-12-011-1/+1
| | | | | | | | | | testparm -v prints the values of all options, including the compiled in defaults. The output of testparm with*out* -v is much more helpful in that it only outputs the non-default options. Signed-off-by: Michael Adam <obnox@samba.org>
* [sssd] Retrieve drop directory conf filesJustin Stephenson2016-11-041-4/+7
| | | | | | | | | | SSSD 1.14 adds support for dropped-in configuration files in /etc/sssd/conf.d/ - Adding these files will ensure all SSSD configuration files are obtained. Closes #890. Signed-off-by: Justin Stephenson <jstephen@redhat.com>
* [global] make class method instance names consistentBryn M. Reeves2016-10-268-19/+19
| | | | | | | | A method decorated with @classmethod receives an instance of the class object (rather than an instance of the class) in its first argument - use 'cls' in these functions rather than 'self'. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [openstack_sahara] capture all sahara* sudoers filesLuigi Toscano2016-10-251-1/+1
| | | | | | It seems that nowadays the file is /etc/sudoers.d/sahara-rootwrap. Closes: #848.
* [systemd] Collect detailed runtime info on each unitBryan Quigley2016-10-251-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | This collects status from all units, which replaces the need to run "systemctl list-units --all" seperately and provides much richer information for every unit - including a bit of log output, process tree, memory usage, and more. It also runs show for all services which should capture the majority of Limits and other information we generally look for. systemd-analyze - provides boot performance info systemctl status - shows system status and nice process tree We also now ls /lib/systemd recursively as some folder names below it have changed. Lastly, we make sure it runs on Ubuntu/Debian as we store systemd in /lib not /usr/lib. Closes: #831. Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com> Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
* [juju] Get Ready for 2.0 and make it less likely to get too muchBryan Quigley2016-10-251-20/+26
| | | | | | | | | | | | | | | | | | | | | | | | | The package name juju is no longer the only way to install juju, so replace with checking /usr/bin/juju|juju-run. Juju-run is on machines deployed with juju. Logging still occurs there in same pattern - /var/log/juju/machinename.log. Juju "Local" logs were never seen in the wild and has been removed. Check that /var/log/juju/ exists before trying to access it. Check that /usr/bin/juju exists before trying to run it. Check that Juju's mongodb exists before trying to parse it. /var/lib/juju/ contains a database that can grow to many GB, let's not include that by default. Also explicitly specified juju formats tabular and json (in 2.0 tabular is the default and in 1.25 json is). And we also now explicitly capture the version. Fix up contrainsts and get-config/get so it works for both versions. Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com>