一种基于springboot微服务的监控方法及系统与流程

文档序号:33506733发布日期:2023-03-18 02:20阅读:来源:国知局

技术特征:
1.一种基于springboot微服务的监控方法,其特征在于:该监控方法包括以下步骤:通过调用nacos的接口,获取注册在注册中心的微服务实例数量及注册中心的性能指标,每个微服务实例基于sidecar的形式安装一个微服务实例监控数据采集器;对采集的所有原始数据进行解析,并封装为object;从数据预处理模块获取数据,对预处理模块解析后的数据进行清洗,筛选过滤出监控指标需要的数据;从数据清洗模块获取纯净的数据,对数据进行统计;对统计后的数据进行持久化操作,处理后的数据存储在influxdb数据库中;通过用户设置的告警策略对监控的指标数据进行告警;将监控的数据以图表的方式展示给用户,提供给用户对监控指标直观的状态。2.根据权利要求1所述的一种基于springboot微服务的监控方法,其特征在于:通过调用nacos的接口,获取注册在注册中心的微服务实例数量及注册中心的性能指标时,具体操作步骤为:配置application.properties文件,将management.endpoints.web.exposure.include字段属性设置为*,暴漏监控数据;在采集器中编写采集接口,使用http协议,启用定时任务,每隔一个时间段调用一次nacos暴漏的metrics接口,获取所有监控数据;过滤出需要的指标如:已注册实例的数量、已注册的微服务数量、nacos的cpu使用量、nacos的内存使用量。3.根据权利要求2所述的一种基于springboot微服务的监控方法,其特征在于:每个微服务实例基于sidecar的形式安装一个微服务实例监控数据采集器时,具体操作步骤为:基于springboot项目的微服务应用,引入prometheus依赖,groupid:io.micrometer,artifactid:micrometer-registry-prometheus,scope:runtime;暴漏监控接口给采集器,在配置文件application.yaml中增加以下配置,management.endpoint.metrics.enabled=true,management.endpoints.web.exposure.include=*,management.endpoint.prometheus.enabled=true,management.metrics.export.prometheus.enabled=true。4.根据权利要求1所述的一种基于springboot微服务的监控方法,其特征在于:对采集的所有原始数据进行解析,并封装为object时,作为采集模块下游流程,数据预处理模块从采集模块获取文本形式数据,用正则表达式匹配解析接口url、接口状态码、接口请求量、接口响应时间等信息,封装为代码对象。5.根据权利要求1所述的一种基于springboot微服务的监控方法,其特征在于:从数据清洗模块获取纯净的数据,对数据进行统计时,对于计数类指标promethues组件接口获取的数据为微服务启动到请求当前时间的累计量,采集器将每次请求promethues接口采集的数据缓存在内存中,当前时间采集的数据与上次请求的数据之差即为本次周期内的数据,周期即为定时任务时间间隔。6.一种如上述权利要求1-5任意一项所述的基于springboot微服务的监控系统,其特征在于:该系统由采集模块、数据预处理模块、数据清洗模块、统计模块、存储模块、告警模块以及显示模块构成;采集模块,通过调用nacos的接口,获取注册在注册中心的微服务实例数量及注册中心
的性能指标,每个微服务实例基于sidecar的形式安装一个微服务实例监控数据采集器;数据预处理模块,对采集的所有原始数据进行解析,并封装为object;数据清洗模块,从数据预处理模块获取数据,对预处理模块解析后的数据进行清洗,筛选过滤出监控指标需要的数据;统计模块,从数据清洗模块获取纯净的数据,对数据进行统计;存储模块,对统计后的数据进行持久化操作,处理后的数据存储在influxdb数据库中;告警模块,通过用户设置的告警策略对监控的指标数据进行告警;显示模块,将监控的数据以图表的方式展示给用户,提供给用户对监控指标直观的状态。7.根据权利要求6所述的一种基于springboot微服务的监控系统,其特征在于:所述采集模块中,通过调用nacos的接口,获取注册在注册中心的微服务实例数量及注册中心的性能指标时,具体操作步骤为:配置application.properties文件,将management.endpoints.web.exposure.include字段属性设置为*,暴漏监控数据;在采集器中编写采集接口,使用http协议,启用定时任务,每隔一个时间段调用一次nacos暴漏的metrics接口,获取所有监控数据;过滤出需要的指标如:已注册实例的数量、已注册的微服务数量、nacos的cpu使用量、nacos的内存使用量。8.根据权利要求6所述的一种基于springboot微服务的监控系统,其特征在于:所述采集模块中,每个微服务实例基于sidecar的形式安装一个微服务实例监控数据采集器时,具体操作步骤为:基于springboot项目的微服务应用,引入prometheus依赖,groupid:io.micrometer,artifactid:micrometer-registry-prometheus,scope:runtime;暴漏监控接口给采集器,在配置文件application.yaml中增加以下配置,management.endpoint.metrics.enabled=true,management.endpoints.web.exposure.include=*,management.endpoint.prometheus.enabled=true,management.metrics.export.prometheus.enabled=true。9.根据权利要求6所述的一种基于springboot微服务的监控系统,其特征在于:所述数据预处理模块中,对采集的所有原始数据进行解析,并封装为object时,作为采集模块下游流程,数据预处理模块从采集模块获取文本形式数据,用正则表达式匹配解析接口url、接口状态码、接口请求量、接口响应时间等信息,封装为代码对象。10.根据权利要求6所述的一种基于springboot微服务的监控系统,其特征在于:所述统计模块中,从数据清洗模块获取纯净的数据,对数据进行统计时,对于计数类指标promethues组件接口获取的数据为微服务启动到请求当前时间的累计量,采集器将每次请求promethues接口采集的数据缓存在内存中,当前时间采集的数据与上次请求的数据之差即为本次周期内的数据,周期即为定时任务时间间隔。

技术总结
本发明涉及微服务及监控技术领域,具体为一种基于springboot微服务的监控方法包括以下步骤:通过调用nacos的接口,获取注册在注册中心的微服务实例数量及注册中心的性能指标,每个微服务实例基于sidecar的形式安装一个微服务实例监控数据采集器;对采集的所有原始数据进行解析,并封装为object;从数据预处理模块获取数据,对预处理模块解析后的数据进行清洗;有益效果为:本发明提出的基于springboot微服务的监控方法及系统通过监控注册中心实时动态获取微服务的服务实例数量等指标信息,自动感知微服务实例;通过promethues实时动态获取微服务的请求量等指标信息,自动感知请求量,用户无需手动频繁查询微服务指标,提升力微服务监控的便利性,降低了人工成本。降低了人工成本。降低了人工成本。


技术研发人员:康泽民 杨桂龙 张建伟 赵山
受保护的技术使用者:浪潮云信息技术股份公司
技术研发日:2022.11.17
技术公布日:2023/3/17
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1