3.修改xxx.sh
加入export JAVA_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=10.203.12.64" 找到nohup java xxx 然后改为nohup java ${JAVA_OPTS}
4.重启服务
sh xxx stopps -ef | grep javakill -9 (jps | grep -i "IdeProvider" | awk 'NR==1{print $1}')sh xxx start5.安装并启动open-falcon agent(从安装的server拷贝agent过来,然后启动服务,xxx server也要装agent)
#新建目录:mkdir -p /app/open-falcon#上传到服务器并解压tar xvf agent.tar.gz#修改/app/open-falcon/agent/conf/cfg.jsonheartbeat模块和transfer模块下的ip地址,将127.0.0.1:6030和127.0.0.1:8433两个地址中的127.0.0.1改成open-falcon的server的IP地址xxxxxx就可以了,端口不需要改。#启动服务nohup /app/open-falcon/agent/bin/falcon-agent -c /app/open-falcon/agent/config/cfg.json &开启服务后,机器会开启1988端口,有防火墙的可以添加防火墙规则,增加1988端口。#检查下进程和端口netstat -antp | grep 1988ps -ef | grep -i "falcon"6.jmxmon部署
#cd /app/open-falcon上传jmxmon包#解压:tar xvf jmxmon-v0.0.2.tar#cp conf.example.properties conf.properties #修改配置jmxmon-v0.0.2/conf.properties # 需要监听的本地jmx端口,支持监听多个端口,多端口用逗号分隔jmx.ports=8999# 本地agent的上报url,如果使用open-falcon的默认配置,则这里不需要改变agent.posturl=http://localhost:1988/v1/push#启动服务
sh control startsh control tail查看日志,或者cat var/app.log以确认程序是否正常启动7.falcon-server验证
http://xxxx:9090/ xxx/xxx 搜索主机名 ####################################################################################################参考:http://book.open-falcon.com/zh_0_2/usage/jmx.htmlhttps://github.com/toomanyopenfiles/jmxmon/blob/master/README.mdjmxmon 简介
jmxmon是一个基于open-falcon的jmx监控插件,通过这个插件,结合open-falcon agent,可以采集任何开启了JMX服务端口的java进程的服务状态,并将采集信息自动上报给open-falcon服务端主要功能通过jmx采集java进程的jvm信息,包括gc耗时、gc次数、gc吞吐、老年代使用率、新生代晋升大小、活跃线程数等信息。对应用程序代码无侵入,几乎不占用系统资源。采集指标
Counters Type Notesparnew.gc.avg.time GAUGE 一分钟内,每次YoungGC(parnew)的平均耗时concurrentmarksweep.gc.avg.time GAUGE 一分钟内,每次CMSGC的平均耗时parnew.gc.count GAUGE 一分钟内,YoungGC(parnew)的总次数concurrentmarksweep.gc.count GAUGE 一分钟内,CMSGC的总次数gc.throughput GAUGE GC的总吞吐率(应用运行时间/进程总运行时间)new.gen.promotion GAUGE 一分钟内,新生代的内存晋升总大小new.gen.avg.promotion GAUGE 一分钟内,平均每次YoungGC的新生代内存晋升大小old.gen.mem.used GAUGE 老年代的内存使用量old.gen.mem.ratio GAUGE 老年代的内存使用率thread.active.count GAUGE 当前活跃线程数thread.peak.count GAUGE 峰值线程数建议设置监控告警项不同应用根据其特点,可以灵活调整触发条件及触发阈值告警项 触发条件 备注gc.throughput all(#3)<98 gc吞吐率低于98%,影响性能old.gen.mem.ratio all(#3)>90 老年代内存使用率高于90%,需要调优thread.active.count all(#3)>500 线程数过多,影响性能