| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
Nested loops shall not use same variable name as their iterator.
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
| |
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
| |
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
| |
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
| |
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
| |
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
|
|
| |
Abandon dead feature not used for years.
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
|
|
| |
last_line redefined before any further refrence
Relevant to: #1559
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Collect /var/log/tower.log for embedded Ansible Tower deployments.
Simplify lists of configs and logs being collected by using few filemasks.
If APPLIANCE_PG_DATA variable is set, collect postgres logs and config.
Resolves: #1544
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The file /etc/nvme/discovery.conf is used by the command
'nvme discover' to send Get Log Page requests to a
NVMe-over-Fabrics Discovery Controller. This plugin
ensures that the sosreport captures the configuration, if it
exists.
Resolves: #1539
Signed-off-by: Jose Castillo <jose.mfcastillo@gmail.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We use locking_type=0 to ensure that we can collect data even if another
process holds a conflicting lock. This introduce a small risk since even
the read-only commands we use may attempt to recover on-disk data in
some cases. The risk is bigger when running lvm2 plugin in oVirt system,
when LVM is used on shared storage, accessible from many hosts.
Add metadata_read_only=1 to ensure that no command can attempt to do
unwanted on-disk changes.
Fixes: #1533
Resolves: #1538
Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Adds the upstream docker packaging to the packages list for the RH
family of distributions.
Related: #1580
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Gates collection of 'docker system df' behind the docker.size option
as this command can take a long time to run just like 'ps -as'.
Related: #1580
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes the potential for 'docker logs' to be called against images and
adds volume collection for docker like #1579 does for podman.
Changes image inspections to use the image name, unless the name or tag
is 'none' in which case the image ID is used.
Resolves: #1580
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Remove plugin options that no longer exist, and add more examples
of global sosreport options that may be set in the config file.
Related: #1530
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Command line arguments that are non-valued ("store_true"), or that
have counter semantics need special handling when read from the
configuration file (since optionless values *do* have an explicit
value in the file, in order to meet .ini file structure, and since
counter values are represented in the file as an integer).
Process these options specially and return them in a form that is
correctly parsed by the ArgumentParser.
Related: #1530
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- SoSOptions class changes:
- from_file method to load load options from file
- encapsulation of particular options into __init__ method
- updated merge logic to replace non-default values only
- sosreport.py changes:
- _parse_args (renamed to _get_parser) newly returns just the
ArgumentParser object as parsing itself is done elsewhere
- SoSOptions are built in ordering:
- defaults from parser (with emtpy cmdline) loaded
- cmdline options replace defaults
- config file known even now
- config.file options replace defaults until already set by
cmdline (i.e. until SoSOptions marked them as nondefault)
- presets can be known even now
- options from given preset replace defaults, until the options
are already updated from cmdline or config.file
- some extra logging/formatting added
- some extra comments added
Fixes: #855
Resolves: #1530
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some plugin options rely on the default data type that can be
automatically overwritten by Python (e.g. from str to int).
The commit preserves the original data type to ensure implicit data
type specified in option definition is always used.
Resolves: #1526
Related: #1597
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a 'none' preset to the base Policy class that can be used to
override any distro-specific presets that may be otherwise automatically
loaded when a bare 'sosreport' is run due to the presence of certian
packages. In other words, using '--preset=none' will cause sosreport to
run identically to how sosreport ran before presets were introduced.
Additionally this 'none' preset is now the default preset returned by
the Policy class if probe_preset() is not overridden by individual
policies.
Resolves: #1537
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Chrony is also supported on Debian and Ubuntu, but is configured
slightly differently.
Resolves: #1536
Signed-off-by: Nick Niehoff <nick.niehoff@canonical.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the Makefile we have specified the path for sosreport docs as:
install -m644 AUTHORS README.md $(DESTDIR)/usr/share/$(NAME)/.
And NAME is 'sos'. But in the manpage we have the path as
/usr/share/doc/sosreport. This fix removes the path and directs
to the package documentation.
Fixes: #1531
Resolves: #1532
Signed-off-by: Jose Castillo <jose.mfcastillo@gmail.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RHEL 8 replaces the standard 'python' binary with platform-python,
following PEP394. RHEL 8 sysadmins can however install python2 and/or
python3 alongside this system installation of python and optionally also
set 'python' to point to either of these installations.
This updates the python plugin to enable on the presence of any of these
packages and also get version information for any version of python
installed, including the platform-python installation.
Resolves: #1524
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
| |
Resolves: #1523
Signed-off-by: Yuan-Chen Cheng <yc.cheng@canonical.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adds a 'cantboot' preset to enable a small number of plugins that may be
useful when troubleshooting a situation in which normal system startup
is failing.
Longer term, it would be beneficial if this preset could be
automatically loaded if sos detects that it is running in a system that
has been booted to rescue/emergency mode.
Resolves: #1522
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Changes the 'pcs status' collection to display full status results.
Resolves: #1521
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Adds a new plugin to collect information about Cockpit, a browser-based
system configuration and management tool.
Resolves: #1491
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Adds collection of a pmstat summary output using 5 minute intervals for
the current day, and makes a root symlink to it in the archive.
Resolves: #1520
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These changes are only on the Debian/Ubuntu bit of logs
Persistent systemd journaling (/var/log/journal exists)
use that instead of collecting any kern/syslog/auth from /var/log.
We also implement a log_days similar to the RH bit, but we default
to 7 days instead of 3.
--all-logs removes the day limit and gets it all
Rsyslog style (assumed if /var/log/journal doesn't exist
default run: collect all 4 of syslog[.1] and kern.log[.1]
(Same as previous behavior plus auth.log).
--all-logs: collect syslog*, kern.log*, and auth.log*
The notable change for --all-logs is it used to just collect all of
/var/log which causes MANY issues.
Before this change using --all-logs on systems with persistent journal
we would collect duplicate log files as such:
* Collect all of syslog*/kern*/auth*
* Collect the entire journal via /var/log/journal
* Collect the last two boots of journal via running journalctl command
Even with this change we still collect the journal last/current boot
with whatever is copied by journal since log_days.
Resolves: #1519
Signed-off-by: Bryan Quigley <bryan.quigley@canonical.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Adds collection of port mappings for podman containers.
Resolves: #1518
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Adds collection of 'tuned-adm verify' to allow for quick and easy
reference as to if tunables have been changed on a system using tuned.
Resolves: #1513
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Adds collection of stonith fencing history and a list of configured
watchdogs.
Resolves: #1512
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Updates the vdo plugin to grab status information for each individual
volume rather than dumping everything into a single output. Additionally
collect vdostats output.
Resolves: #1510
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Now that RHEL 8 Beta is out, update the redhat policy dist_version to be
able to properly set the version.
Resolves: #1509
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
| |
Collect /sys/class/drm/*/edid .
Resolves: #1507
Signed-off-by: Pavel Moravec <pmoravec@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update the list of ethtool commands to include:
ethtool -e (EEPROM dump)
ethtool -P (permanent MAC address)
ethtool -l (channel/queue settings)
ethtool --phy-statistics
ethtool --show-priv-flags
ethtool --show-eee
All of the above are helpful in understanding the state of modern NICs.
And -P is nice to have as otherwise there is no reliable way to see the
permanent MAC of team ports.
Resolves: #1503
Signed-off-by: Patrick Talbert <ptalbert@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Adds a new plugin for the storage event monitoring daemon peripety.
Resolves: #1502
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
Resolves: #1426
Signed-off-by: Ashish Humbe <ahumbe@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|