Skip to content

sos-4.4

Compare
Choose a tag to compare
@TurboTurtle TurboTurtle released this 15 Aug 20:10
· 743 commits to main since this release

The sos team is pleased to announce the release of sos-4.4. This release includes a number of performance and stability fixes, as well as several developer-focused quality of life changes to various APIs. A subset of the changes in this release are highlighted below.

Global Changes

  • Added a Georgian translation

Report Changes

  • Fixed a bug where a plugin's default timeout was not being correctly evaluated.
  • Improved binary file detection by leveraging python3-magic. SoS now has a dependency on this package/module.
  • Encryption of the final archive now supports the use of the SOSENCRYPTKEY or SOSENCRYPTPASS environment variables to allow users to not pass these values via command line options.
  • The --list-plugins output will now report actual, not default, option values for plugin options.
  • The locale used for collections has been updated from C to C.UTF-8
  • Loop devices are now more accurately enumerated on host systems.
  • Network devices are now enumerated and saved to the network key for the devices dict handed to plugins.

Plugin Changes

  • Added 2 new plugins: collectl, shmcli
  • Container IDs may now be used with Plugin.container_exists(), not just container names.
    • This also means that Plugin.exec_cmd() can now function with IDs.
  • The container-based collection paths for several OSP-related plugins has been updated.
  • Plugins may now define a default set of environment variables for their collections.
  • The scsi plugin will now collect SCSI persistent reserve commands.
  • The openshift plugin may now reference a local kubeconfig file for authentication, via the openshift.kubeconfig option.
  • The no-oc option for the openshift plugin has been renamed to with-api to be more obvious about what collections it controls.
  • The openshift plugin now does not collect oc command output by default (with-api is defaulted to False).
  • The yum and dnf plugins have been merged. Only the dnf plugin remains.
  • The fibrechannel plugin will now collect HBA device logs.
  • The stratis plugin has been updated to collect stratis 3.x commands.
  • The ceph_mgr plugin will now collect ceph orchestrator commands.
  • The hpssm plugin now iterates over multiple slots for collections.
  • Binary files will no longer be tailed by add_copy_spec() when their size exceeds the specified sizelimit.
  • add_blockdev_cmd() has been refactored into add_device_cmd() which will be used for device command iteration, only now not limited to block devices.
    • add_device_cmd() may be used to iterate over devices enumerated by sos during initialization(e.g. block, ethernet, network, and more), or manually compiled lists of devices.
  • Plugins no longer log string content of tailed collections or manually compiled strings.

Policy Changes

  • Fixed a bug in the Red Hat policy that would incorrectly override a provided --upload-url to Red Hat's SFTP server if incorrect credentials were given.
  • Fixed usage of GenericPolicy so that it can actually be used to collect minimal reports from distributions without explicit sos policies.

Collect Changes

  • New cluster profile: rhosp
    • Note: This profile is designed for use with Red Hat OpenStack environments, and as such makes some assumptions about the deployment. It may work for non-Red Hat environments that are similarly deployed, but that is not guaranteed.
  • Greatly improved robustness and integration with OpenShift Container Platform to provide consistent report collections and cleanup.
  • Refactored node enumeration for pacemaker clusters. Users should now see more accurate and consistent node lists from these clusters.
  • By default, the ocp cluster will now attempt to use a well-known stock kubeconfig file present in order to enable collections from the oc API.
  • A new with-api option for the ocp cluster has been added to control whether or not any node is used to collect API data from the cluster.
  • Fixed a bug where the --image option would be ignored for OCP cluster collections using containerized hosts.
  • The use of exit() is now standardized and should be used in all cases where collect needs to stop execution.

Clean|Mask Changes

  • Nothing in the /etc/sos/cleaner directory will be captured in sos reports now.
  • Parsers will now pre-generate regex lists for matching obfuscation patterns, rather than creating them on the fly.
    • As such, performance should be noticeably improved for most use cases.
  • Fixed a bug where sos would obfuscate the tmpdir path of the final results, which would result in a "No such file or directory" error when trying to perform cleanup.
  • Individual parsers (e.g. the hostname parser or ip parser) may be selectively disabled now via the --disable-parsers option.

Help Changes

  • sos help was relatively unchanged this release. Various plugins, collect profiles, and other sections of the project were given extended sos help information alongside other improvements and fixes to those components.

For full information on the changes contained in this release, please refer to the Git commit logs. Further release information and tarballs are available at:

https://github.com/sosreport/sos/releases/tag/4.4

Please report any problems to the sos-devel mailing list, or the GitHub issue tracker:

https://github.com/sosreport/sos/issues/

The team would like to thank everyone who contributed fixes, new features, testing, and feedback for this release.