Setting proc title on PHP based daemons is pretty sweet.(PHP 5 >= 5.5.0, PHP 7, PHP 8)
cli_set_process_title — Définit le titre du processus
Définit le titre du processus visible avec des outils comme top et ps. Cette fonction n'est disponible qu'en mode CLI.
title
Une alerte de niveau E_WARNING sera générée si le système
sous-jacent n'est pas supporté.
| Version | Description |
|---|---|
| 8.5.0 |
cli_set_process_title() émet désormais une alerte
E_WARNING lorsque le titre du processus défini
est trop long ; auparavant, le titre était tronqué.
|
<?php
$title = "Mon super script PHP";
$pid = getmypid(); // il est possible d'utiliser ceci pour voir le titre du processus dans ps
if (!cli_set_process_title($title)) {
echo "Impossible de définir le titre du processus pour le PID $pid...\n";
exit(1);
} else {
echo "Le titre du processus '$title' pour le PID $pid a bien été défini !\n";
sleep(5);
}
?>In Linux this command changes the title for commands like 'ps -a' it doesn't seem to work with 'top' or 'pkill'
To change the short name (eg PHP) to something else you can use the below:
<?php
$strNewName='myscript';
cli_set_process_name($strNewName);
cli_set_process_title($strNewName);
var_dump(cli_get_process_name());
var_dump(cli_get_process_title());
function cli_set_process_name($strName)
{
file_put_contents("/proc/".getmypid()."/comm",$strName);
}
function cli_get_process_name()
{
return(trim(file_get_contents("/proc/".getmypid()."/comm"),"\r\n"));
}
Note: The above will NOT work in Windows and may not work in all flavours of linux (I use Debian).