Java程序各种监控命令和排查方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java程序各种监控命令和排查方法相关的知识,希望对你有一定的参考价值。
1、监控进程GC情况:
jstat -gcutil pid 频率
例如:jstat -gcutil 3807 2s
2、监控CUP和内存:
命令:top,vmstat,nmon
工具:Jvisualvm ,Jprofile,perfnom,Btrace,loadrunner
3、监控IO:iostat
iostat -d -x -k 1 10
4、监控网络:ifstat,iftop,nethogs
监控总体带宽使用――nload、bmon、slurm、bwm-ng、cbm、speedometer和netload
监控总体带宽使用(批量式输出)――vnstat、ifstat、dstat和collectl
每个套接字连接的带宽使用――iftop、iptraf、tcptrack、pktstat、netwatch和trafshow
每个进程的带宽使用――nethogs
5、内存泄漏:生成dump文件,使用IBM分析器,MAT,Jprofile,Jvisualvm查看原因。
6、线程阻塞:
Jvisualvm可以查看线程阻塞情况,打印thread dump
7、数据库
oracle: 打印AWR报告,分析具体原因。
Redis: 监控工具redis-stat
查看Redis的连接数,已使用的内存数,阻塞连接等等
./redis-cli -h 192.168.9.32 info | grep -e "connected_clients" -e "blocked_clients" -e
"used_memory_human" -e "used_memory_peak_human" -e "rejected_connections" -e "evicted_keys" -e "instantaneous" -e "mem_fragmentation_ratio" -e "used_memory" -e "used_memory_rss"
MongoDB:
以上是关于Java程序各种监控命令和排查方法的主要内容,如果未能解决你的问题,请参考以下文章