py-setproctitle
py-setproctitle copied to clipboard
Feature: Modify `/proc/<pid>/cmdline` only
setproctitle.setproctitle modifies /proc/<pid>/cmdline as well as /proc/<pid>/status. I would like to modify what is seen via ps but retain what e.g. systemctl status shows.
This is what one gets without setproctitle:
user@demo:~$ cat /usr/local/bin/proctitle-demo
#!/usr/bin/python3
#import setproctitle
import sys
from time import sleep
#setproctitle.setproctitle(' '.join(sys.argv))
while True:
sleep(1)
user@demo:~$ systemctl status proctitle-demo
● proctitle-demo.service - proctitle-demo
Loaded: loaded (/etc/systemd/system/proctitle-demo.service; static; vendor preset: enabled)
Active: active (running) since Fri 2022-11-25 15:30:38 CET; 1min 12s ago
Main PID: 20802 (proctitle-demo)
Tasks: 1 (limit: 1149)
Memory: 2.8M
CGroup: /system.slice/proctitle-demo.service
└─20802 /usr/bin/python3 /usr/local/bin/proctitle-demo
user@demo:~$ ps aux | grep 20802 | grep -v grep
63158 20802 0.0 0.8 23040 8544 ? Ss 15:30 0:00 /usr/bin/python3 /usr/local/bin/proctitle-demo
This is what one gets with setproctitle:
user@demo:~$ sudo vim /usr/local/bin/proctitle-demo
user@demo:~$ cat /usr/local/bin/proctitle-demo
#!/usr/bin/python3
import setproctitle
import sys
from time import sleep
setproctitle.setproctitle(' '.join(sys.argv))
while True:
sleep(1)
user@demo:~$ sudo systemctl restart proctitle-demo
user@demo:~$ systemctl status proctitle-demo
● proctitle-demo.service - proctitle-demo
Loaded: loaded (/etc/systemd/system/proctitle-demo.service; static; vendor preset: enabled)
Active: active (running) since Fri 2022-11-25 15:32:39 CET; 2s ago
Main PID: 20879 (/usr/local/bin/)
Tasks: 1 (limit: 1149)
Memory: 2.8M
CGroup: /system.slice/proctitle-demo.service
└─20879 /usr/local/bin/proctitle-demo
user@demo:~$ ps aux | grep 20879 | grep -v grep
63158 20879 0.0 0.8 25104 8608 ? Ss 15:32 0:00 /usr/local/bin/proctitle-demo
user@demo:~$
The ps output as well as the CGroup tree has been modified as desired, but the Main PID line is unaesthetic.
I don't personally see a reason to introduce this feature. Would you like to sponsor it, or to propose a merge request?
I might try a merge request some day.