集群环境下排查问题、跟踪给定关键信息的流转路径、访问量统计在不借助第三方日志归档服务的情况下,常常会手动对各台服务器执行日志查找,在遇到麻烦一些的场景时组合使用Linux命令可以很快的搞定。
场景
统计某个时间段某一用户登陆IP、设备信息、次数
分析
1.进行日志关键信息归档
2.统计
2.1.cut
2.2.sort
2.3.uniq
示例
#!/bin/bash
#author WangYanCheng
#version 2015-08-29
def_user="work"
def_hosts="10.7.0.59 10.7.0.21 10.7.0.43 10.7.0.23 10.7.0.55"
def_date="29 28 27 26 25 24 23 22"
#def_user="root"
#def_hosts="192.168.190.2"
def_path="/opt/logs/higo/201508/"
def_out_path="/home/work/13621084409/"
#给定服务地址和时间查日志
function doWork(){
mkdir $def_out_path;
for host in $def_hosts
do
echo $host;
for dateStr in $def_date
do
echo $dateStr;
ssh $def_user@$host "find $def_path$dateStr/ -name debug.log|xargs grep 'account/login'|grep '13621084409'" >> $def_out_path$dateStr.log
echo $?
ret=$?
if [ 0 != $ret ]
then
echo "${green}"
else
echo "error ${green}"
fi
done
done
}
doWork
图示