shell 脚本分析Nginx 日志

本脚本分析Nginx 负载均衡器的日志:

#!/bin/bash

if [ $# -eq 0 ]; then
    echo "Error:please specify logfile."
    exit 0
else
    LOG=$1
fi

if [ ! -f $1 ]; then
    echo "Sorry,sir. I cat‘t find this apache log file, pls try again!"
    exit 0
fi

##########################################
echo "Most of the IP:"
echo "-----------------------------------"
awk ‘{ print $1 }‘ $LOG|sort |uniq -c |sort -nr |head -10
echo
echo
##########################################
echo "Most of the time:"
echo "-----------------------------------"
awk ‘{ print $4 }‘ $LOG|cut -c 14-18 |sort |uniq -c |sort -nr |head -10

echo
echo
#########################################
echo "Most of the page:"
echo "-----------------------------------"
awk ‘{ print $11 }‘ $LOG |sed ‘s/^.*\\(.cn*\\) \"/\\1/g‘ |sort |uniq -c |sort -rn |head -10
echo
echo
########################################
echo "Most of the time /Most of the ip:"
echo "-----------------------------------"
awk ‘{ print $4 }‘ $LOG |cut -c 14-18 |sort -n |uniq -c |sort -nr |head -10 >timelog

for i in `awk ‘{ print $2 }‘ timelog`
do
    num=`grep $i timelog |awk ‘{ print $1 }‘`
    echo " $i $num"
    ip=`grep $i $LOG|awk ‘{ print $1 }‘ |sort -n | uniq -c |sort -nr |head -10`
    echo "$ip"
    echo
done
rm -f timelog


本文出自 “Smurf Linux运维” 博客,请务必保留此出处http://jin771998569.blog.51cto.com/2147853/1652445

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。