我运行一台装有 centos、ispconfig 的服务器,上面有大约 100 个网站。它偶尔会负载过高,但我没有真正的方法可以查明原因。我真的很想查看每个用户/网站的点击数/CPU 使用情况的统计数据(每个网站都有自己的用户)。这似乎应该很简单,我尝试过许多报告包,包括 Munin、Goaccess 等,但这些都不能满足我的需要。
有没有什么软件可以做到这一点?谢谢。
答案1
检查 Apache 日志文件的位置,我使用 C-Panel,所以我的位置是
/usr/local/apache/logs/access_log --- full server logs
/home/user/access_logs/userdomain.com --- logs for particular user.
以下命令将有助于识别 Apache 高负载的原因。
cat access_log| awk '{print $1}' | sort | uniq -c |sort -n
生成一个 IP 地址列表,并在列表前面加上访问网站的次数。
tail -10000 access_log| awk '{print $1}' | sort | uniq -c |sort -n
生成一个列表,显示某个站点的最近 10,000 次点击。
awk '{print $7}' access_log|cut -d? -f1|sort|uniq -c|sort -nk1|tail -n10
生成您的网站上最常被调用的文件或目录的列表。
for k in `ls -S /home/*/access_logs/*`; do wc -l $k | sort -r -n; done
生成所有域的所有流量的列表(针对 VPS 或专用服务器上的多个域)。