1.jps 查看运行的java进程,查找线程号;也可以用ps 来查找
2.jstack 线程号 可以dump出java程序正在运行的信息
3.jinfo pid 可以打印system.properties中的信息
- jstat -gcutil 31177 1000 5 查看gc情况, 查看进程号31177 ,1000毫秒间隔,打印5次,可以重定向dump到文件中慢慢分析,分时间dump多个文件,查看是否有死锁
- linux top命令查看进程运行情况,再次点击1,可以查看每个cpu的负载情况;再次点击H,可以查看线程的运行情况,如果想查看进程下的线程情况,可以top -p 进程号,然后输入H
free -m free -g 查看内存
top - 22:24:50 up 463 days, 12:43, 1 user, load average: 12.55, 12.27, 11.73
Tasks: 110 total, 3 running, 107 sleeping, 0 stopped, 0 zombie
Cpu0 : 72.4%us, 3.6%sy, 0.0%ni, 22.7%id, 0.0%wa, 0.0%hi, 0.7%si, 0.7%st
Cpu1 : 58.7%us, 4.3%sy, 0.0%ni, 34.3%id, 0.0%wa, 0.0%hi, 2.3%si, 0.3%st
Cpu2 : 53.3%us, 2.6%sy, 0.0%ni, 34.1%id, 0.0%wa, 0.0%hi, 9.6%si, 0.3%st
Cpu3 : 52.7%us, 2.7%sy, 0.0%ni, 25.2%id, 0.0%wa, 0.0%hi, 19.5%si, 0.0%st
Cpu4 : 59.5%us, 2.7%sy, 0.0%ni, 31.2%id, 0.0%wa, 0.0%hi, 6.6%si, 0.0%st
Mem: 7680000k total, 7663152k used, 16848k free, 98068k buffers
Swap: 2096472k total, 14904k used, 2081568k free, 3032636k cached
netstat -nat | grep 12200 –c 使用netstat命令查询有多少台机器连接到这个端口上,也可以用来查看数据库连了几个链接
netstat -tunlp 查看端口上跑的进程
ps -eLf | grep java -c 通过ps命令查看下线程数
grep Y /home/admin/logs/xxx/monitor/dal-rw-monitor.log |awk -F',' '{print $7$5}' | sort -nr|head -20 统计执行最慢的SQL,左边
的是执行时长,单位是毫秒,右边的是执行的语句
cat /proc/net/dev 查看网络流量
cat /proc/loadavg 查看系统平均负载。
cat /proc/meminfo 查看系统内存情况
cat /proc/stat 查看CPU的利用率