如果你想直观的看到你服务器当前状态,你可以在服务器上放置探针,显示服务器当前的CPU内存等使用情况,不过现在很多探针都大同小异(简单的说就是丑),不符合我们装13的气质。所以我发现了一款叫 NetData 的服务器监测工具。Demo在这里,它是可以同时监控很多个服务器的,不过我现在就这一个,也就不玩这么高级了。

这是它的安装说明,因为我是使用的Arch,所以我可以直接使用sudo pacman -S netdata来安装。其他系统可以使用命令

# download it - the directory 'netdata' will be created
git clone https://github.com/firehol/netdata.git --depth=1
cd netdata

# build it, install it, start it
./netdata-installer.sh

这个小东西不需要其他的依赖,甚至他自己带了WEB服务器。

当你安装完成后,就可以访问

http://127.0.0.1:19999/

不过我用Nginx给转发了下,丢到了我的域名下面
使用简单的配置即可

location / 
{
    proxy_pass http://127.0.0.1:19999;
}

所以你现在访问https://status.isthnew.com就可以看到我的服务器状态

NetData可以对接我常用的Nginx,PHP-FPM,Mariadb来查看他们的状态,官方Wiki有详细解释。
对于Nginx,编译时需要加上--with-http_stub_status_module参数。同时在localhost的server块中加入如下参数

    location /stub_status {
            stub_status;
    }

对于PHP-FPM,需要在localhost的server块中加入

    location ~^/status$ {  
        include fastcgi_params;  
         fastcgi_pass unix:/run/php-fpm/php-fpm.sock;  
         fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;  
    }  

php-fpm.conf需要加入pm.status_path = /status,并重启PHP-FPM

对于Mariadb,需要先安装mysqlclient,使用命令pip install mysqlclient安装即可。同时需要编辑NetData配置/etc/netdata/python.d/mysql.conf,填写你使用的TCP或者SOCKS地址和数据库账户和密码。

之后重启NetData生效。