zoukankan      html  css  js  c++  java
  • zabbix监控大数据应用的JVM进程的GC信息

    一,需求:大数据的机器,很多jvm进程,需要监控特定的几个的进程的FGC,FGCT,YGC,YGCT,GCT。

    • YGC:从应用程序启动到采样时年轻代中gc次数 
    • YGCT:从应用程序启动到采样时年轻代中gc所用时间(s) 
    • FGC:从应用程序启动到采样时old代(全gc)gc次数 
    • FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s) 
    • GCT:从应用程序启动到采样时gc用的总时间(s)

    二,在服务器上可以通过命令查看

      jps命令可以获取到进程的ID,jstat -gc ID ,获取gc的信息

      

    三,编写自定义脚本(不会shell,用Python加命令凑的,尴尬)

    cat jps1.py
    #
    !/usr/bin/env python import os,sys jps_info = os.popen("/usr/bin/sudo /usr/local/java/bin/jps | grep %s | awk '{print $1}'"% sys.argv[1]) jps_info = jps_info.read() jps_id = jps_info.strip() jstat = {'YGC':'$13','YGCT':'$14','FGC':'$15','FGCT':'$16','GCT':'$17'} info = jstat[sys.argv[2]] command = "/usr/bin/sudo /usr/local/java/bin/jstat -gc "+jps_id+" | awk '{print "+info+"}'| /usr/bin/tail -n 1" os.system(command)

    四,编辑zabbix agent配置文件

      添加:UserParameter=jstat[*], /usr/bin/python /etc/zabbix/scripts/jps1.py $1 $2

    五,其它地方的调整

      在本机测试脚本是正常的,但是在zabbix server上测试有几个问题需要修改

      编辑 /etc/sudoers文件,添加一行:

      zabbix    ALL=(ALL)       NOPASSWD:ALL

      这一行需要注释掉:#Defaults    requiretty  

    六,创建item(数据类型选择浮点数)

      

     七:展示

      

  • 相关阅读:
    【poj1182】 食物链
    【bzoj1013】 JSOI2008—球形空间产生器sphere
    【codevs1200】 NOIP2012—同余方程
    【poj2891】 Strange Way to Express Integers
    【bzoj2819】 Nim
    【bzoj2463】 谁能赢呢?
    【poj3537】 Crosses ans Crosses
    【bzoj2115】 Xor
    下载时出现using cached如何解决
    如何设计一个"好的"测试用例?
  • 原文地址:https://www.cnblogs.com/cq90/p/8558641.html
Copyright © 2011-2022 走看看