sos-4.4
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
orSOSENCRYPTPASS
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
toC.UTF-8
- Loop devices are now more accurately enumerated on host systems.
- Network devices are now enumerated and saved to the
network
key for thedevices
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.
- This also means that
- 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 theopenshift.kubeconfig
option. - The
no-oc
option for theopenshift
plugin has been renamed towith-api
to be more obvious about what collections it controls. - The
openshift
plugin now does not collectoc
command output by default (with-api
is defaulted to False). - The
yum
anddnf
plugins have been merged. Only thednf
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 intoadd_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 theoc
API. - A new
with-api
option for theocp
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 wherecollect
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 orip
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 extendedsos 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.