linux_常用日志过滤命令
2023-06-13 09:11:17 时间
归档2015年在br做运维时常用的命令,主要梳理出日志的过滤操作。 对于日志文本的处理,常用的还是sed、awk,具体如下:
统计ip访问量:
cat nginx.log |awk '{print $2,$11}' | awk ' {++S[$1]; V[$1]+=$2 } END {for(a in S) print a, S[a], V[a]}' |sort -nrk2 |head
222.93.28.28 132171 15367772663
115.168.84.186 130746 29782262441
114.221.180.61 126604 22408007956
61.187.159.136 108039 4166438896
通过sed正则匹配需要的域
head -n 20 nginx.log |sed 's/\([^ ]*\) .*\(imei\=[^&]*\).*/\1,\2/'
过虑前:
125.126.250.49 - - [09/Jul/2015:00:00:01 +0800] "GET /client/spiritscreen/recommend?version=12.150417&imei=51B5ECC4A771CEF1D3BA81B34F4416C0&channelId=jltop_m_scb07&p=com.GreanMaster.pixelmonmcpecraftrun2 HTTP/1.0" 200 0.032 938 "-" "-" "125.126.250.49" "-" "-"
过虑后:
125.126.250.49,imei=51B5ECC4A771CEF1D3BA81B34F4416C0
## 其中:
[^ ]:表示匹配非空
\1,\2:表示取出前面括号内的对应内容,并逗号隔开
统计tcp连接情况
[root@zabbix ~]# netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
TIME_WAIT 68
SYN_SENT 3
ESTABLISHED 72
LAST_ACK 3
nginx变量的统计:$body_bytes_sent
cat down.nginx.log |grep 23/May/2015 |awk '{print $11}' |awk '{sum += $1} END {print "Sum = ", sum}'
Sum = 2695161432870
排序过虑下载频率
cat down.nginx.log |awk '{print $8}' |sed 's/_t[0-9]\{11\}//' |sed 's/?.*$//' |sed 's/^\/.*[ ]//' |sort |uniq -c |sort -n > sort_0401
nginx status
wget -O- -q -t 3 -T 3 --no-check-certificate http://172.16.114.54:80/status
nc使用
nc -z -w 1 -u 172.16.114.22 123 #加-u可测试udp
Connection to 172.16.114.22 123 port [udp/ntp] succeeded!
远程ssh机箱上的reset健重启
## 有时候linux由于硬盘或者其它原因,某个进程挂住怎么也杀不死,输入reboot也无法重启
## 这时候,一般只能按机箱上的reset健来重启了,下面两行命令可以搞定:
echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger
小时的请求量进行统计
cat nginx.log |sed 's/.*\[\(.*2015:[^:]*\).*].*/\1/' | sort |uniq -c
10762 14/Feb/2015:14
1876 14/Feb/2015:15
502 14/Feb/2015:19
378 14/Feb/2015:20
rsync的几种操作
rsync -avz 172.16.190.56::data /data0/wwwroot/data/ --files-from=/data0/logs/sort_miss_04292015 --progress
rsync -avz 172.16.11.11::data/xbz1.apk /var/log/ --progress
rsync 172.16.17.11::d0_data/ /data0/ --files-from=file.list -artv >> ~/rsync.log
rsync -avz root@172.16.18.11::data_s/d /data0/ --list-only |grep -v -E '^d' > file.list
相关文章
- linux objdump命令,Linux objdump命令
- Linux精彩世界:时间子系统(linux时间子系统)
- Linux系统下的设备管理器(linux设备管理器)
- Linux命令使用指南(linux命令应用大全)
- Linux探索:查看日志路径(linux查看日志路径)
- Linux系统快速启动Redis服务命令(linux启动redis命令)
- 行 从Linux命令行管理自己的电脑(linux或者命令)
- Linux下网卡工作模式探究(网卡工作模式linux)
- Linux分支:探索无限可能(linux的分支)
- Linux命令究竟为何无效?(linux命令无效)
- Linux自动删除文件的高效解决方案(linux文件自动删除)
- 的应用Linux下at命令的实用技巧(linux下at命令)
- 解决Linux时间同步问题:双机同步教程(两台linux时间同步)
- Linux命令快速查询软件(linux指令速查软件)
- Linux命令大全:轻松掌握文件操作技巧与记录方法(linux记录文件操作)
- 探究Linux中的空格:对文件名、命令和格式化的影响(linux中的空格)
- Linux系统如何编写命令?(linux系统怎么写命令)
- Linux性能命令大全:轻松查看系统运行状况(查看linux性能的命令)
- 25个Linux命令工具,让你事半功倍!(linux 命令 工具)
- 学习Linux,从这25个基本命令开始!(linux的基本操作命令)
- Linux下文件比对的强大命令行——diff(linux 文件比对命令)
- Linux文件系统日志:追踪探究之路(linux文件系统日志)