linux 监控命令
先總結下常用的一些監控工具:
##linux命令
- w
系統負載
- lsof -p pid
進程打開的文件
- lsof -i:port
端口的運行情況
- free -m
內存情況
- vmstat
進程、內存、內存分頁、堵塞IO、traps及CPU活動的信息
- iostat
磁盤io情況
- top -n 1
cpu/負載/內存等使用情況.
- iotop
磁盤io
- ps aux | sort -k6nr | head -n 10
查看linux 實際內存占用最多的10個
- ps aux | sort -k5nr | head -n 10
查看linux 虛擬內存占用最多的10個
- dstat -lamps
查看系統整體狀況
- pstree -al pid|head -n 1
查看進程啟動命令
- strace -T -p pid
查看進程系統調用.開銷很大,使用時要小心.
- netstat
netstat -an |grep port?查看端口連接情況
netstat -alnp |grep pid?通過pid查看進程所有端口情況
- ss -lntp |grep port
通過端口查看進程
- nmon
強大的監控工具.也可以方便的出報表.我一般用來在壓力測試時監控系統性能.
- latencytop
用于查看系統內部慢.以前做mysql性能優化,多虧有這東東.
- cat /proc/pid/status |grep Threads
查看進程內線程個數
##java工具
- jvisualvm
jvm的運行情況/各種dump的分析都可以干,沒有JRMC牛.oracle承諾會把JRockit的特性遷移到HotSpot上面來.現在jdk下已經有jmc了.
- jps -lv
查看所有java進程.
- jinfo -sysprops pid
查看java進程系統參數
- jinfo -flag jvmflag pid
查看jvm flag.比如查看xss,jinfo -flag ThreadStackSize pid
- jstack pid
查看線程棧信息
- jmap -dump:live,format=b,file=xxx.hprof pid
生成heap dump
- jmap -histo pid
查看java堆中對象統計信息
- java -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal
查看jvm flag
The first column appears to reflect the data type of the option (intx, uintx, uint64_t, bool, double, ccstr, ccstrlist). The second column is the name of the flag and the third column is the value, if any, that the flag is set to. The fourth column appears to indicate the type of flag and has values such as {product},{pd product}, {C1 product} for client or {C2 product} for server, {C1 pd product} for client or {C2 pd product} for server, {product rw}, {diagnostic} (only if -XX:+UnlockDiagnosticVMOptions was specified), {experimental}, and {manageable}. See Eugene Kuleshov's The most complete list of -XX options for Java 6 JVM for a brief description of most of these categories as well as a listing of most of these options themselves.- tda
線程棧分析器,這個是jvisualvm的插件.
- mat
基于eclipse的heap dump分析工具,這個工具是比jvisualvm在heap分析這塊專業.不過jvisualvm能cover住大多數場景,基本上我都只用jvisualvm了.
- jmap -heap pid
檢查heap情況
- GCViewer
GC日志分析
- jstat -gcutil pid
查看gc總體情況
S0 — Heap上的 Survivor space 0 區已使用空間的百分比 S1 — Heap上的 Survivor space 1 區已使用空間的百分比 E — Heap上的 Eden space 區已使用空間的百分比 O — Heap上的 Old space 區已使用空間的百分比 P — Perm space 區已使用空間的百分比 YGC — 從應用程序啟動到采樣時發生 Young GC 的次數 YGCT– 從應用程序啟動到采樣時 Young GC 所用的時間(單位秒) FGC — 從應用程序啟動到采樣時發生 Full GC 的次數 FGCT– 從應用程序啟動到采樣時 Full GC 所用的時間(單位秒) GCT — 從應用程序啟動到采樣時用于垃圾回收的總時間(單位秒)- btrace
神器,線上出問題了,想知道某個方法的調用情況,入參之類的,就靠btrace了. 此工具大致原理如下:
轉載于:https://www.cnblogs.com/wangdaijun/p/5973600.html
總結
以上是生活随笔為你收集整理的linux 监控命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UVaLive 7361(矩阵快速幂)
- 下一篇: Asp.Net Core--基于角色的授