Hello. On Sat, Aug 13, 2022 at 04:39:50AM -0500, Russell Haley <yumpusamongus+systemd@xxxxxxxxx> wrote: > Since systemd logs the total CPU time used when the unit deactivates, I > wonder if there's a way to make it log the peak memory footprint too, > kind of like the time command's "maxresident". The unit does have > MemoryAccounting=yes. > > It turned out that it was simple to write a shell script loop to wait > until packagekit was activated and sample the memory usage before the > timeout expired. (About 228 MiB.) However, I am still interested to > know if there might be a better/more general method. > > P.S. Since I had to re-send this mail with the correct From: address, I > looked into it and apparently kernel 5.19 added a memory.peak to cgroups > v2, so I think it very recently become possible to have an elegant > implementation of this. You need the kernel with memory.peak (sampling is unrealiable) and then quick n' dirty > MemoryAccounting=yes > ExecStopPost=/usr/bin/cat /sys/fs/cgroup/system.slice/%n/memory.peak Output goes to journald by default: > Aug 19 00:13:29 machine cat[7433]: 2924544 If you wanted to have this reported by default, PRs for memory.peak support are welcomed :-) Michal