Page 1 sur 1
Retrouver le script PHP utilisé par un processus Apache2
Posté : 01 avr. 2010, 10:31
par lostintraslationofphp
Bonjour,
En ce moment je cherche a trouver une solution pour connaitre quelle script PHP est utilisé par un processus Apache.
Si je fait un ps -ef | grep apache2 par exemple :
apache 31689 31676 0 12:06 ? 00:00:00 /usr/sbin/apache2 -D PHP5 -D INFO -D LANGUAGE -D LDAP -D AUTH_LDAP -D UMASK -D STATUS -d /usr/lib/apache2 -f /etc/apache2/httpd.conf -k start
Mais cela n indique en rien quelle script est en cours d exécution.
Je suis loin d être un expert PHP ou apache, mais l idée c est juste de trouver quelle script plante et fait prendre des ressources CPU a un processus apache.
Fabien
Re: Retrouver le script PHP utilisé par un processus Apache2
Posté : 01 avr. 2010, 14:36
par Calimero
Bonjour,
Je ne pense pas que tu puisses t'y prendre dans ce sens là (faire dire à apache quel script php est actuellement éxécuté).
Par contre l'inverse est possible (faire dire à un script php quel est son PID courant, qui est identique à celui du process apache si php est lancé en tant que module) :
http://www.php.net/manual/en/function.posix-getpid.php
Re: Retrouver le script PHP utilisé par un processus Apache2
Posté : 01 avr. 2010, 14:56
par devlop78
Ca ne t'empêche pas de killer un processus trop gourmand même si tu ne sais pas qui c'est ... Et si tu utilises SuExec, SuPhp des trucs comme ça, tu peux aussi savoir quel utilisateur se fait hacker (j'imagine que si ta config apache et php est bien faite, un seul script en exécution ne peut pas mettre ton serveur KO, c'est donc que qqn s'amuse derrière ...)
Re: Retrouver le script PHP utilisé par un processus Apache2
Posté : 06 avr. 2010, 17:13
par lostintraslation
Bonjour,
Merci pour vos deux réponds, il trop de scripts a reprendre pour utiliser la fonction posix_getpid.
Dommage peut être dans une nouvelles plateformes, bonne idée a mettre en place.
Âpres, il pas de hacking les scripts sont reelement bugés

.
Je vais continuer a killer les process Apaches et a deviner quelle script a planté.
Merci encore pour vos reponses,
Fabien
Re: Retrouver le script PHP utilisé par un processus Apache2
Posté : 06 avr. 2010, 18:54
par Patriboom
Si t'as un page qui appelle plusieurs scripts, tu peux insérer des messages entre chaque appel et voir à l'écran où en est la progression de la page principal avant que le CPU ne se mette à rougir. Quand le ventilateur du CPU s'énerve ... regarde la dernière indication à l'écran et tu devrais trouver ton script mangeur de CPU dans la commande suivante.
Pour cela, j'en conviens, il faut avoir d'avance une idée d'où est le problème.
Re: Retrouver le script PHP utilisé par un processus Apache2
Posté : 06 avr. 2010, 22:34
par stopher
Dans un premier temps , check les logs ...
error_log et access_log
Ch.
Re: Retrouver le script PHP utilisé par un processus Apache2
Posté : 06 avr. 2010, 22:38
par stopher
Sinon , tu as peut être memtrack qui peut t'aider
http://fr2.php.net/manual/fr/intro.memtrack.php
Pour la conf tout se passe dans le php.ini :
http://fr2.php.net/manual/fr/memtrack.ini.php
Ch.