`
jwfdp
  • 浏览: 46595 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

java gateway监控cpu使用率

 
阅读更多

1. 下载zabbix java gateway源码。

2. 修改zabbix-java源码

3.修改JMXItemChecker,增加如下代码:

 

/**
     * @des get cpu usage
     * @return
     */
    private float getCpuUsage()
    {
        float cpuUsage = 0;
       
        try
        {
            ObjectName operateObjectName = new ObjectName("java.lang:type=OperatingSystem");
            ObjectName runtimeObjName = new ObjectName("java.lang:type=Runtime"); 
            long processCpuTime = Long.parseLong(mbsc.getAttribute(operateObjectName, "ProcessCpuTime").toString());
           
            int availableProcessors = Integer.parseInt(mbsc.getAttribute(operateObjectName, "AvailableProcessors").toString());
           
            long upTime = Long.parseLong(mbsc.getAttribute(runtimeObjName, "Uptime").toString());
           
            logger.info("===2======processCpuTime: " + processCpuTime);
            logger.info("===2=====upTime: " + upTime);
           
            if (prevUpTime > 0L && upTime > prevUpTime)
            {
                logger.info("===3=======");
                long elapsedCpu  = processCpuTime - prevProcessCpuTime;
                long elapsedTime = upTime - prevUpTime;
                 
                // cpuUsage could go higher than 100% because elapsedTime
                // and elapsedCpu are not fetched simultaneously. Limit to
                // 99% to avoid Plotter showing a scale from 0% to 200%.
                cpuUsage = Math.min(99F, elapsedCpu / (elapsedTime * 10000F * availableProcessors));
                logger.info("===2=====cpuUsage: " + cpuUsage);
            }
            logger.info("===4=======");
            prevUpTime = upTime;
            prevProcessCpuTime = processCpuTime;
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
       
        return cpuUsage;
    }

分享到:
评论

相关推荐

    Zabbix通过JMX监控java中间件.docx

    Zabbix 服务器可以通过 Zabbix-Java-gateway 来监控 Java 应用程序的性能指标,例如内存使用情况、CPU 使用率、线程数等。 为了使用 Zabbix 通过 JMX 监控 Java 中间件,需要先安装 Zabbix-Java-gateway,并配置 ...

    AWS平台上的JAVA应用开发.pdf

    Java应用可以根据CPU使用率、网络流量等因素自动添加或移除EC2实例。 10. **CloudWatch**:监控和日志服务,用于收集和分析应用的性能指标、日志数据,以及设置警报。Java开发者可以利用CloudWatch优化应用性能,...

    spring 微服务相关框架学习。以及记录 jvm 调优 数据监控 并发控制-spring-frame.zip

    监控JVM指标如CPU使用率、堆内存使用情况,有助于及时发现和解决问题。 数据监控对于微服务的运维同样重要。Spring Boot Actuator提供了丰富的端点,用于监控和管理应用程序,包括健康检查、审计、指标、日志等。...

    AdventNet SNMP API 4

    在该表中,DEVICEID字段是设备的唯一标识符,cpmCPUTotal5sec字段存储了设备的5秒CPU使用率,cpmCPUTotal1min字段存储了设备的1分钟CPU使用率,cpmCPUTotal5min字段存储了设备的5分钟CPU使用率。 6. 设备内存使用率...

    dubbokeeper-master监控资源

    2. **服务监控**:提供实时的服务调用统计,包括成功率、响应时间、QPS(每秒查询率)等指标,帮助开发者快速定位性能瓶颈。 3. **服务管理**:支持对服务进行启停、禁用等操作,便于进行服务治理。 4. **配置中心...

    Java无状态系统的优化实践.zip

    - **JVisualVM**:Java性能分析工具,包括CPU、内存、线程等监控。 - **Profiling工具**:如VisualVM、YourKit,帮助定位性能瓶颈。 通过以上优化策略,Java无状态系统能够在保持高并发处理能力的同时,提升系统...

    Java面试题精华 含基础知识与大厂面试题

    10. **性能调优**:JMeter、VisualVM等工具的使用,系统监控,CPU、内存、磁盘、网络等方面的优化。 掌握以上知识点,将大大提升你在Java面试中的竞争力。不断学习和实践,是成为优秀Java开发者的必经之路。

    Java架构面试专题汇总(含答案)和学习笔记

    - **性能调优**:CPU、内存、磁盘I/O、网络等方面的监控与调优。 以上只是部分可能涵盖的内容,实际的学习笔记和面试专题可能会包含更多细节和实践案例。通过深入理解和掌握这些知识点,不仅可以提升面试成功率,...

    sentinel-1.8.5.jar

    3. **系统自适应保护**:Sentinel 能够根据系统的资源状况(如 CPU 使用率、内存使用率等)动态调整阈值,实现自适应保护,保证系统的稳定运行。 4. **热点防护**:针对某些热点资源,Sentinel 提供了限流策略,...

    Jsp高级音乐网源码.zip

    运维方面,监控系统性能,如CPU使用率、内存占用和数据库查询效率等,都是保证服务稳定的关键。还可以通过日志分析用户行为,优化系统性能和用户体验。此外,安全是任何网站都不能忽视的问题,源码中应考虑SQL注入、...

    Zabbix使用手册

    - **数据收集**: 收集各种类型的性能指标数据,包括CPU负载、内存使用率、磁盘I/O等。 - **灵活的阈值定义**: 用户可以根据实际需求自定义监控指标的正常范围,超出范围时触发报警。 - **高级告警配置**: 支持...

    移动App性能评测与优化压缩包

    再者,CPU使用率是衡量App运行效率的重要指标。过高可能导致设备发热,电池耗损加快。通过分析CPU使用情况,可以找出过度绘制、线程阻塞等问题,并通过多线程优化、任务调度等方式改善。 网络性能优化包括减少HTTP...

    Zabbix4.0的中文用户手册

    - **服务器性能监控:** 如CPU使用率、内存使用情况等。 - **应用程序状态监控:** 可以监控各种服务的状态,如数据库、Web服务等。 - **报警与通知机制:** 当监控指标超出预设阈值时,能够及时发送报警信息。 - **...

    Sentinel-master-1.7.2.zip

    3. **系统保护**:Sentinel 还可以监控系统的资源使用情况,如 CPU 使用率、内存使用率等,当系统负载过高时,会自动限制流量,保护系统稳定。 4. **热点防护**:针对热点资源,Sentinel 提供了限流策略,防止热点...

    不好下载敢紧备份sentinel18+

    4. **系统保护**:Sentinel能够监控系统的资源状态,如CPU使用率、线程池情况等,当达到预设的阈值时,会自动触发保护机制,避免系统过载。 5. **热点防护**:Sentinel还提供了热点参数限流,可以防止因某个热点...

    Sentinel-1.8.7.zip

    3. **系统保护**:Sentinel 还可以监控系统的资源使用情况,如 CPU 使用率、内存使用率等,当系统负载过高时,会自动进行保护,防止系统过载崩溃。 4. **热点防护**:针对热点资源,Sentinel 提供了热点参数流控,...

    zabbix学习文档

    - 如CPU使用率、内存使用情况等。 **Zabbix 加载扩展模块第三方库支持:** - 通过扩展模块增强监控能力。 - 支持更多监控类型。 **Zabbix Telnet 监控类型:** - 通过Telnet协议收集数据。 - 适用于特定的服务监控...

    企业级电商平台分析项目-commerce.zip

    1. Prometheus:监控系统性能指标,如CPU使用率、内存使用量、网络流量等。 2. Grafana:可视化工具,展示监控数据,帮助运维人员及时发现问题。 3. Alertmanager:配置告警规则,当系统出现异常时,自动发送通知...

    k8sistio

    - **Horizontal Pod Autoscaler (HPA)**:Kubernetes 内置的 HPA 能够根据 CPU 或内存使用率自动调整 pod 的数量。 - **Istio 的智能路由**:通过 Pilot,Istio 可以监控服务的流量,并根据预设的策略动态调整服务...

Global site tag (gtag.js) - Google Analytics