首页 > 编程语言 >Javamis 监控管理 - 服务监控模块开发过程详述(超详细图文说明)

Javamis 监控管理 - 服务监控模块开发过程详述(超详细图文说明)

时间:2024-02-22 11:36:53浏览次数:29  
标签:详述 double private jna javamis 监控 CPU Javamis

文章目录

、第一章、为什么要研发 [服务监控] 功能模块 二、第二章、[服务监控] 功能模块开发过程   2.1.、引入依赖包   2.2、开发过程     2.2.1、实体类     2.2.2、控制层类     2.2.3、页面展示      

 前言

       本来想着等待javamis低代码开发平台完全研发完成后,再按照功能模块的方式一一将功能点详细写出来,但随着javamis平台越研发越大,就会导致前面研发功能模块过程的知识点遗漏记下来,经过仔细思考后,决定还是先不要那么完美,在开发过程遇到哪些功能点就记录哪些,以免知识点再次遗漏,待整个javamis平台研发完,再整理博客的顺序 - 便于小伙伴们的参考,同时,请小伙伴们届时留意我的动态发布内容,欢迎加入QQ技术交流群:327773608

 

第1章 为什么要研发 [服务监控] 功能模块

  这是因为,服务监控模块可以实现实时动态的展示出java 虚拟机(jvm)的动态情况,帮助管理人员对服务器的软件、硬件的维护~

第2章 搭建开发环境(windows环境)

2.1.  引入依赖包

javamis-parent父工程下,pom.xml文件添加以下依赖

1 <properties>
2     <oshi.version>6.4.5</oshi.version>
3     <jna.version>5.10.0</jna.version>
4 </properties>

 

 1 <dependencyManagement>
 2      <dependencies>
 3          <!-- 监控服务-获取系统信息 -->
 4          <dependency>
 5             <groupId>com.github.oshi</groupId>
 6             <artifactId>oshi-core</artifactId>
 7             <version>${oshi.version}</version>
 8         </dependency>
 9             <dependency>
10             <groupId>net.java.dev.jna</groupId>
11             <artifactId>jna</artifactId>
12         <version>${jna.version}</version>
13         </dependency>
14         <dependency>
15             <groupId>net.java.dev.jna</groupId>
16             <artifactId>jna-platform</artifactId>
17             <version>${jna.version}</version>
18         </dependency>
19       </dependencies>
20 </dependencyManagement>                

 

javamis-core 子核心工程下,pom.xml文件引用父工程的依赖

 1    <dependencies> 
 2         <!-- 监控服务-获取系统信息 -->
 3         <dependency>
 4             <groupId>com.github.oshi</groupId>
 5             <artifactId>oshi-core</artifactId>
 6         </dependency>
 7         <dependency>
 8             <groupId>net.java.dev.jna</groupId>
 9             <artifactId>jna</artifactId>
10         </dependency>
11         <dependency>
12             <groupId>net.java.dev.jna</groupId>
13             <artifactId>jna-platform</artifactId>
14         </dependency>
15     </dependencies>

 

2.2.  开发过程

2.2.1.   实体类

Monitor.java

  1 /**
  2  * @name:   用户实体类
  3  * @version:1.0.2
  4  * @author:    HuiJia
  5  * @QQ号:     763236277
  6  * @QQ群:     327773608
  7  * @邮箱:     [email protected]
  8  * @site:    http://www.javamis.com
  9  */
 10 @Data
 11 @EqualsAndHashCode(callSuper = false)
 12 @Accessors(chain = true)
 13 public class Monitor implements Serializable {
 14     private static final long serialVersionUID = 1L;
 15     
 16     private static final int OSHI_WAIT_SECOND = 1000;
 17     
 18     /********************以下是CPU的监控信息******************************/
 19     /**
 20      * 核心数
 21      */
 22     //private int cpuKernelNum;
 23     private int cpuNum;
 24 
 25     /**
 26      * CPU总的使用率
 27      */
 28     private double cpuTotal;
 29 
 30     /**
 31      * CPU系统使用率
 32      */
 33     private double cpuSys;
 34 
 35     /**
 36      * CPU用户使用率
 37      */
 38     private double cpuUsed;
 39 
 40     /**
 41      * CPU当前等待率
 42      */
 43     private double cpuWait;
 44 
 45     /**
 46      * CPU当前空闲率
 47      */
 48     private double cpuFree;
 49     
 50     /********************以下是JVM虚拟机的监控信息******************************/
 51     /**
 52      * 当前JVM占用的内存总数(M)
 53      */
 54     private double jvmTotal;
 55 
 56     /**
 57      * JVM最大可用内存总数(M)
 58      */
 59     private double jvmMax;
 60 
 61     /**
 62      * JVM空闲内存(M)
 63      */
 64     private double jvmFree;
 65 
 66     /**
 67      * JDK版本
 68      */
 69     private String jvmVersion;
 70 
 71     /**
 72      * JDK路径
 73      */
 74     private String jvmHome;
 75     
 76     /********************以下是内存的监控信息******************************/
 77     /**
 78      * 内存总量
 79      */
 80     private double memoryTotal;
 81 
 82     /**
 83      * 已用内存
 84      */
 85     private double memoryUsed;
 86 
 87     /**
 88      * 剩余内存
 89      */
 90     private double memoryFree;
 91     
 92     /********************以下是服务器的监控信息******************************/
 93     /**
 94      * 服务器名称
 95      */
 96     private String computerName;
 97 
 98     /**
 99      * 服务器Ip
100      */
101     private String computerIp;
102 
103     /**
104      * 项目路径
105      */
106     private String userDir;
107 
108     /**
109      * 操作系统
110      */
111     private String osName;
112 
113     /**
114      * 系统架构
115      */
116     
117     /********************以下是磁盘的监控信息******************************/
118     private List<SysFile> sysFiles = new LinkedList<SysFile>();

 

 

 

 

 

 

 

标签:详述,double,private,jna,javamis,监控,CPU,Javamis
From: https://www.cnblogs.com/javamis/p/18026945

相关文章

  • 【调研】运维监控平台文章资源收集
    https://www.zabbix.com/OpManager智能网络监控软件卓豪https://www.manageengine.cn/network-monitoring/ZABBIX实时监控数万台设备,采集百万级指标http://grandage.cn/?bd_vid=9690304849173985139Prometheus普罗米修斯是一个开源的服务监控系统和时序数据库,其提供了通用......
  • Kafka监控系统Kafka Eagle
    kafka集群部署完成后需要有一个可视化web页面,便于实时查看和观测kafka集群状态,kafka本身并没有提供可视化页面,但市面上有很多开源的可视化工具,我们以其中的KafkaEagle为例,在安装KafkaEagle之前,至少需要安装JDK、kafka、zookeeper的环境后,再进行后续操作。本文的前置条件:Kafka......
  • 【性能测试】Redis监控利器---Redis State
    一、本地运行监控神器(以Windows为例)1、安装Jruby,官网地址:http://jruby.org/2、官网下载最新的RedisStatejar包,官网下载地址:https://github.com/junegunn/redis-stat/releases3、启动RedisState进行监控(1)启动命令redis-stat[HOST[:PORT][/PASS]...][INTERVAL[COUN......
  • 智慧安防/视频监控汇聚平台EasyCVR如何通过接口调用获取设备录像回看流地址?
    视频云存储/视频融合/安防监控EasyCVR视频汇聚系统可兼容各品牌的IPC、NVR、移动单兵、智能手持终端、移动执法仪、无人机、布控球等设备的接入,支持的接入协议包括:国标GB28181、RTSP/Onvif、RTMP,以及厂家的私有协议与SDK,如:海康ehome、海康sdk、大华sdk、宇视sdk、华为sdk、萤石云s......
  • Linux:系统性能监控工具-tsar安装和使用
    前言做性能验证往往需要去监控系统的各项性能指标,Linux系统监控工具有很多,但对于命令行操作,安装便捷,监控项较全面等方面,个人比较推荐tsartsar介绍TSAR(TaobaoSystemActivityReporter))是淘宝自己开发的采集工具。主要用来收集服务器的系统信息(如cpu,io,mem,tcp等),以及应用数据......
  • 安防监控/视频汇聚/监控摄像头EasyCVR平台如何通过RTMP协议进行推流?
    众所周知,安防视频汇聚平台EasyCVR不仅可支持的接入协议非常多(包括:国标GB28181、RTSP/Onvif、RTMP,以及厂家的私有协议与SDK,如:海康ehome、海康sdk、大华sdk、宇视sdk、华为sdk、萤石云sdk、乐橙sdk等),同时可分发的视频流格式也非常丰富,具体包括:RTMP、RTSP、HTTP-FLV、WebSocket-FLV、......
  • 智能视频监控平台智能边缘分析一体机视频监控平台AI算法智能检测人员违规打电话
    在数字化时代的浪潮中,智能视频监控平台如同一双无所不见的眼睛,默默守护着我们的安全。而在这些平台中,智能边缘分析一体机以其独特的AI算法和智能检测功能,成为了维护规范和秩序的得力助手。今天,让我们一同探索这项技术如何在不断演进中,为我们的社会带来更加安全和高效的保障。......
  • Prometheus+TDengine集群实现监控体系高可用
    背景为避免再次出现因Prometheus宕机导致业务无法查看历史数据受到影响,准备将Prometheus架构从单节点方式升级为高可用集群方式并将后端存储由本地存储改为远端分布式时序数据库存储。分布式时序数据库采用国产数据库TDengine。架构解释:虚线代表Prometheusmaster节点的Promet......
  • 视频智能分析平台LntonAIServer视频监控管理平台车辆检测算法车辆识别
    在这个信息爆炸的时代,数据如同洪流般汹涌而来,而我们,正站在这股洪流的前沿,试图捕捉那些能够引领我们走向更加智能化未来的珍贵数据。在众多领域之中,视频监控管理平台的发展尤为迅猛,它们不仅仅是简单的录像工具,更是智能分析和管理的关键节点。而在这场智能化的革命中,LntonAIServer......
  • 智能视频监控平台LntonAIServer视频汇聚算法识别行人入侵算法检测
    在当今这个信息化飞速发展的时代,安全一直是我们无法回避的话题。随着人工智能技术的不断进步,智能监控系统已经成为了维护社会安全的有力工具。在众多的智能监控技术中,LntonAIServer视频汇聚算法和行人入侵检测算法是两种重要的技术,它们如同两位无声的守护者,默默守护着我们的安全......