JVM常用監控工具

參考:

http://yangle20081982.blog.163.com/blog/static/179610073201232391148631/

http://www.blogjava.net/sean/archive/2011/01/27/343620.html

http://lsmvictor.blog.163.com/blog/static/1851519320120733440451/

1 jps

  • 作用:列出本機所有java進程的pid
  • 用法:jps [ options ] [ hostid ] 
  • [options]:
    • -q :僅輸出VM標識符,不包括class name,jar name,arguments in main method 
    • -m 輸出main method的參數 
    • -l 輸出完全的包名,應用主類名,jar的完全路徑名 
    • -v 輸出jvm參數 
    • -V 輸出通過flag文件傳遞到JVM中的參數(.hotspotrc文件或-XX:Flags=所指定的文件 
    • -Joption 傳遞參數到vm,例如:-J-Xms48m
  • hostid: [protocol:][[//]hostname][:port][/servername]
  • 樣例: jps -lv 10.9.18.110(目標主機要啓動jstatd)

2 jstat

  • 作用:用於輸出給定java進程的統計信息
  • 用法:jstat -options 
  • [options]:
    • -class (類加載器)
    • -compiler (JIT) 
    • -gc (GC堆狀態)
    • -gccapacity (各區大小)
    • -gccause (最近一次GC統計和原因)
    • -gcnew (新區統計)
    • -gcnewcapacity (新區大小)
    • -gcold (老區統計)
    • -gcoldcapacity (老區大小)
    • -gcpermcapacity (永久區大小) 
    • -gcutil (GC統計彙總)
    • -printcompilation (HotSpot編譯統計)
  • 樣例: jstat -gcutil -t 12345 200 300 每200毫秒連續打印300次帶有時間戳的GC統計信息

3 jstatd

  • 作用:啓動jvm監控服務。它是一個基於rmi的應用,向遠程機器提供本機jvm應用程序的信息。默認端口1099
  • 用法:jstat -options 
  • [options]:
    • -nr 當一個存在的RMI Registry沒有找到時,不嘗試創建一個內部的RMI Registry
    • -p port 端口號,默認爲1099
    • -n rminame 默認爲JStatRemoteHost;如果多個jstatd服務開始在同一臺主機上,rminame唯一確定一個jstatd服務
    • -J jvm選項
  • 樣例: 出錯:java.security.AccessControlException: access denied (java.util.PropertyPermission java.rmi.server.ignoreSubClasses write)

4 jvisualm


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章