应用维护之交流篇-江航分享

常见管理命令

sort 命令:

个人常用参数:
-n 按数字进行排序
-r 倒序排序(默认是升序)
-k 指定排序列,比如-k 2,1,概念order by一样
-t 分隔符,配合-k使用


grep命令
个人常用参数:
-i 忽略大小写
-o 只显示匹配的对应字符串
-P 使用perl正则匹配
-A 显示匹配行的后面几行
-B 显示匹配行的前面几行
-l 显示匹配的文件名,适合批量文件查找字符
-c 显示匹配的记录数
-exec 指定特殊的处理命令


awk命令
awk -F’:’ ‘{print $5}’
head命令
hean -n 10
tail命令
tail -n 10
tail -f *.log #同时打开多个文件监听
uniq命令
uniq -c #显示重复记录数


统计最近访问频率最高的来源IP
见备注, 分析cookie_log
(myalibaba,tpsc机器上ip_count.sh)
* 统计最近访问频率最高的URL
见备注,分析cookie_log
(myalibaba,tpsc机器上top_tps.sh)


top命令

常用参数:
1(数字1) 显示每个cpu核的信息
H 显示thread信息
u 选择指定用户
o 选择排序字段
f 增加/删除显示字段
<Enter> or <Space> 强制刷新信息
top -Hp pid #监控指定进程


ps命令
常用:
#显示进程树信息
ps auxf
ps -ef
#信息对应进程的thread信息
ps -mp pid -o THREAD,tid
ps -Lfp pi

常见系统监控命令
sar ,dstat , vmstat , mpstat , iostat
监控内容:
1.每cpu核的执行状态, user , sys , idle
2.用户进程执行状态,cpu使用状况
3.网络流程情况
4.磁盘I/O情况
5.系统interrupt . context switch情况

* mpstat -P ALL 1 1000 / sar -P ALL 1 1000
* sar -x pid 1 1000
* dstat -n 1 1000 / sar -n ALL 1 1000
* iostat 1 1000 / sar -d 1 1000 / dstat -d 1 1000
* dstat -y --tcp #监听中断,cs,tcp链接状态
找到合适自己的命令,功能上大体类似


常见java监控命令

jps 说明: 类似于java的ps命令,查看对应的java相关进

常用命令:
jps -v : 显示java进程的详细信息
jps : 显示java进程简要信息

jinfo 说明: 查看java进程的启动信息,可动态调整jvm
参数
常用命令:
jinfo $pid
jinfo -flags $pid

jmap 说明: 查看java heap区使用信息
常用命令:
jmap -heap $pid #查看jvm内存使用情况
jmap -histo:live $pid #查看jvm当前堆中类对象的情况
jmap -dump:format=b,file=heap.bin $pid #dump当前的
jvm堆栈信息,用于线下分析,比如使用工具mat


jstack 说明: 查看java当前线程栈信息
常用命令:
jstack $pid
jstack -l $pid #查看对应的lock信息


必须明白的几件事
1.端口限制
线上环境只允许8080,80,7001,443对外开发
2.appops如何发布
rpm打包机制, figo配置
3.应用运行监控
monitor/ok.html 到底监控了哪些
4.系统PV走势
comsat,dubbo(sys-stat) 最低点,最高点,总数
5.系统的依赖环境,服务的客户端
代码,dubbo服务中心 外部系统,客户端系统
必须明白的几件事
6. 系统重要内容的版本号
apache , mod_jk , jboss , jdk
dubbo, hessian , 数据库driver 等

猜你喜欢

转载自san-yun.iteye.com/blog/1663249