That said, if you want it to behave at its best when OOM, it does help to tweak vm.swappiness, vm.watermark_scale_factor, vm.min_free_kbytes, vm.page-cluster and a couple of other parameters.
See e.g.
https://makedebianfunagainandlearnhowtodoothercoolstufftoo.c...
https://documentation.suse.com/sles/15-SP7/html/SLES-all/cha...
I don't know of any good statistics script for zswap, I use the script below as a custom waybar module:
#!/bin/bash
stored_pages="$(cat /sys/kernel/debug/zswap/stored_pages)"
pool_total_size="$(cat /sys/kernel/debug/zswap/pool_total_size)"
compressed_size_mib="$((pool_total_size / 1024 / 1024))"
compressed_size_gib="$((pool_total_size / 1024 / 1024 / 1024))"
compressed_size_mib_remainder="$((compressed_size_mib * 10 / 1024 - compressed_size_gib * 10))"
uncompressed_size="$((stored_pages * 4096))"
uncompressed_size_mib="$((uncompressed_size / 1024 / 1024))"
uncompressed_size_gib="$((uncompressed_size / 1024 / 1024 / 1024))"
uncompressed_size_mib_remainder="$((uncompressed_size_mib * 10 / 1024 - uncompressed_size_gib * 10))"
ratio="$((100 * uncompressed_size / (pool_total_size + 1)))"
echo "$compressed_size_gib.$compressed_size_mib_remainder"