监控PHP的实时动作

本文将介绍一个简单的方法实时监控php进程,窥探一下当网页被访问时php到底在干什么。本例子所在服务器环境均基于《CentOS 6.2 上编译安装 Nginx 1.0.15 + PHP 5.3.12 + MySQL 5.1.62》一文。

首先是安装htop,为了简化安装步骤,直接使用RPMForge软件仓库安装。如果RPMForge还没安装好,先安装RPMForge。

先下载安装包

1
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm

然后安装DAG的PGP Key

1
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

验证下载包的完整性

1
rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm

安装package

1
rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm

最后,就可以直接用yum来安装htop了

1
yum install htop

安装成功后,安装监控工具strace

1
yum install strace

安装完毕后,用于监控的环境就搭建好了。输入htop命令后,将看到强化版的top(系统监控)。将光标移动到php进程的位置按‘s’,就可以看到实时php进程的动作了,这些动作都是将php脚本翻译后的动作,均为直接的系统调用。

php-trace