System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于微服务及监控,具体涉及一种聚合型微服务统一监控台及其构建和监控方法。
技术介绍
1、随着大数据和云计算的飞速发展,单体式应用越来越不适用于复杂的业务需求。微服务架构的出现将规模庞大的应用分解为小的、互相连接的服务,成功解决了单体应用所存在的问题。微服务设计风格,有诸多优势与挑战,符合企业不停膨胀与需求多变的中大型软件系统研发的设计思路与管理办法,但面临着服务实例多,部署复杂,监控复杂,事务等一系列管理与技术上的挑战,同时对线上系统排查跟踪问题也存在非常大的挑战。面对大数据与云计算时代下微服务架构所带来的复杂性与挑战,一套功能完备、智能高效的微服务监控一体化平台不可或缺。该平台应具备全面监控覆盖、智能告警与根因分析、自动化运维管理以及良好的可定制化与集成能力,旨在实现对微服务生态系统的深度可观测性、自动化运维以及跨团队协作,从而提升系统的稳定性和运维效率以及安全性,为企业的数字化转型与业务创新保驾护航。
2、目前微服务架构实现方案大部分基于spring cloud,健康监控主要采用开源spring boot admin组件,其具备通知、实例监控、内存使用、cpu使用、中间件等状态监控的基本功能。考虑系统的安全性、健壮性、应用性能、合规性、软件质量等监控的因素,对于深度性能分析、大规模集群管理、精细化权限控制等高级需求,需要配合其他专业工具或进行定制化开发。在实际使用过程中,需关注其资源消耗、安全设置以及在大规模环境下的扩展性问题。显然这些基本功能无法满足实际使用的需求。
技术实
1、本专利技术解决现有微服务健康监控仅具备基本功能无法满足深度性能分析、大规模集群管理、精细化权限控制等高级需求的问题,提供一种聚合型微服务统一监控台及其构建和监控方法。
2、本专利技术要求保护的技术方案如下:
3、一种聚合型微服务统一监控台,所述监控台是一个可视化的用户操作界面,用于统一监控和展示微服务架构中各个微服务的运行数据并对异常进行报警;所述监控台包括依次连接的用于接收微服务运行数据的数据接收模块、用于读取数据接收模块的数据并对数据进行分发的数据分发模块、用于接收数据分发模块分发的数据并对数据进行分析和展示的数据分析和展示模块以及用于微服务异常报警的报警模块;所述监控台还包括微服务连接配置模块,所述监控台还包括微服务连接配置模块,所述微服务连接配置模块提供预埋数据接口并用于将数据接收模块与微服务建立连接,并为微服务提供无侵入埋点;
4、所述数据分析和展示模块包括依次连接的用户配置子模块、微服务展示子模块和微服务数据分析子模块;所述用户配置子模块用于配置监控的微服务并配置各个微服务的监控功能;所述微服务展示子模块采用组件形式展示微服务架构内的所有微服务,展示的每个微服务组件中包括多个子组件,每个子组件对应一个监控功能,所述子组件内展示微服务对应的监控功能的监控数据;所述微服务数据分析子模块内置每个微服务中监控数据的阈值,当监控数据超过阈值时微服务数据分析子模块将该信息传输给报警模块进行报警;所述监控功能是对每个微服务对应的运行数据进行监控。
5、优选地,所述用户配置模块可根据用户的需求对要监控的微服务进行增加或减少,所述微服务对应的监控功能也可根据用户的需求进行增加或减少。
6、所述的监控功能包括:基本功能和增强功能;所述基本功能包括:内存、cpu、磁盘、网络、配置、缓存、日志、jvm、版本、健康、依赖中间件状态、元数据;所述增强功能包括:sql性能监控、http请求性能监控、spring函数性能、reids缓存主备切换、数据库db主备切换、消息队列mq主备切换、异常日志收集汇总、数据库连接池状态、依赖lib合规性检查、优雅停机、在线api接口列表展示、数据库账号状态、findbugs缺陷报告展示、防火墙配置、关联git信息展示、jmeter压力测试、exception监控、静态应用安全测试。
7、在本专利技术的具体实施例中,所述sql性能监控通过对接知识库系统,针对exception信息、性能差sql给出推荐解决方案,sql性能监控数据通过读取数据库连接池来获取;所述http请求性能监控数据、spring函数性能数据、异常日志收集汇总数据通过读取jvm的代理程序获取;所述redis缓存主备切换,通过改变重写redistemplate.setconnectionfactory实现用户无感秒切;数据库db主备切换,通过改变重写datasource实现用户无感秒切;消息队列mq主备切换,通过改变重写mqconnectionfactory实现用户无感秒切;依赖lib合规性检查通过读取依赖扩展包的信息获取并结合自定义规则库来完成检测;所述优雅停机通过预先埋点shutdown端点,并针对业务微服务情况执行停止服务命令,通过监控台操作界面控制微服务的停止,做到优雅停机,而不是强制终止进程;所述在线api接口列表展示通过发送http restful实现在线http接口调试并返回接口数据;所述数据库账号状态通过执行有dba权限的标准sql查询数据库用户账号状态数据并通过埋点返回给监控台展示,所述数据库账号状态包括是否锁定、过期时间、表空间关联;所述findbugs缺陷报告展示通过集成findbugs扫描插件,实现打包时运行代码缺陷扫描并生成报告与展示;防火墙配置通过执行linux系统的iptables命令实现应用服务器上的防火墙状态查询与配置;所述关联git信息展示通过集成git插件,展示当前线上运行版本的改变记录以及git版本号、所述jmeter压力测试通过执行已经配置好的jmeter压测脚本实现随时随地运行压测并产生报告;所述exception监控对重点性能与异常数据写入itsm运维系统实现工单分配;所述静态应用安全测试通过对接sast实现静态应用安全测试并展示报告。
8、优选地,所述报警模块通过报红显示进行报警;所述报警模块还能够将报警数据通过邮件、钉钉、短信或微信发送给相关人员。
9、本专利技术还提供所述的聚合型微服务统一监控台的构建和监控方法,包括如下步骤:
10、s1:监控台客户端基于spring boot admin的插件搭建可视化展示界面用于监控数据的展示,监控台服务端基于spring boot admin架构配置扩展插件,所述监控台基于扩展插件进行监控功能的扩展;监控台客户端通过代码构建并实现监控台上各个模块的功能;
11、s2:所述微服务连接配置模块用于将数据接收模块与微服务建立连接,并为微服务提供无侵入埋点;微服务与数据接收模块建立连接后,监控台服务端可通过微服务连接配置提供的预埋数据接口获取微服务的埋点信息,所述埋点信息包括微服务的所有运行数据;
12、s3:所述用户配置子模块配置监控的微服务并配置各个微服务的监控功能,监控台服务端根据用户配置子模块的配置通过预埋数据接口获取需要监控的微服务的运行数据并进行运行数据的传输;
13、s4:所述数据接收模块接收监控台服务端本文档来自技高网...
【技术保护点】
1.一种聚合型微服务统一监控台,其特征在于,所述监控台是一个可视化的用户操作界面,用于统一监控和展示微服务架构中各个微服务的运行数据并对异常进行报警;所述监控台包括依次连接的用于接收微服务运行数据的数据接收模块、用于读取数据接收模块的数据并对数据进行分发的数据分发模块、用于接收数据分发模块分发的数据并对数据进行分析和展示的数据分析和展示模块以及用于微服务异常报警的报警模块;所述监控台还包括微服务连接配置模块,所述微服务连接配置模块提供预埋数据接口并用于将数据接收模块与微服务建立连接,并为微服务提供无侵入埋点;
2.根据权利要求1所述的聚合型微服务统一监控台,其特征在于,所述用户配置模块可根据用户的需求对要监控的微服务进行增加或减少,所述微服务对应的监控功能也可根据用户的需求进行增加或减少。
3.根据权利要求2所述的聚合型微服务统一监控台,其特征在于,所述的监控功能包括:基本功能和增强功能;所述基本功能包括:内存、CPU、磁盘、网络、配置、缓存、日志、JVM、版本、健康、依赖中间件状态、元数据;所述增强功能包括:SQL性能监控、http请求性能监控、Spri
4.根据权利要求3所述的聚合型微服务统一监控台,其特征在于,所述SQL性能监控通过对接知识库系统,针对Exception信息、性能差SQL给出推荐解决方案,SQL性能监控数据通过读取数据库连接池来获取;所述http请求性能监控数据、Spring函数性能数据、异常日志收集汇总数据通过读取JVM的代理程序获取;所述redis缓存主备切换,通过改变重写RedisTemplate.setConnectionFactory实现用户无感秒切;数据库db主备切换,通过改变重写datasource实现用户无感秒切;消息队列mq主备切换,通过改变重写MqConnectionFactory实现用户无感秒切;依赖lib合规性检查通过读取依赖扩展包的信息获取并结合自定义规则库来完成检测;所述优雅停机通过预先埋点shutdown端点,并针对业务微服务情况执行停止服务命令,通过监控台操作界面控制微服务的停止,做到优雅停机,而不是强制终止进程;所述在线api接口列表展示通过发送http restful实现在线http接口调试并返回接口数据;所述数据库账号状态通过执行有DBA权限的标准sql查询数据库用户账号状态数据并通过埋点返回给监控台展示,所述数据库账号状态包括是否锁定、过期时间、表空间关联;所述findbugs缺陷报告展示通过集成Findbugs扫描插件,实现打包时运行代码缺陷扫描并生成报告与展示;防火墙配置通过执行linux系统的iptables命令实现应用服务器上的防火墙状态查询与配置;所述关联git信息展示通过集成git插件,展示当前线上运行版本的改变记录以及git版本号、所述jmeter压力测试通过执行已经配置好的jmeter压测脚本实现随时随地运行压测并产生报告;所述Exception监控对重点性能与异常数据写入ITSM运维系统实现工单分配;所述静态应用安全测试通过对接SAST实现静态应用安全测试并展示报告。
5.根据权利要求2所述的聚合型微服务统一监控台,其特征在于,所述报警模块通过报红显示进行报警;所述报警模块还能够将报警数据通过邮件、钉钉、短信或微信发送给相关人员。
6.权利要求1-5任一所述的聚合型微服务统一监控台的构建和监控方法,其特征在于,包括如下步骤:
7.根据权利要求6所述的构建和监控方法,其特征在于,S1中所述预埋数据接口通过聚集多个微服务的swagger api数据实现统一管理。
8.根据权利要求6所述的构建和监控方法,其特征在于,S1中所述监控台监控的微服务和微服务对应的监控功能可自由配置,用户可根据需求进行微服务的增减和微服务中监控功能的增减。
9.根据权利要求6所述的构建和监控方法,其特征在于,S1中所述监控台服务端的配置包括:
10.根据权利要求6所述的构建和监控方法,其特征在于,S1中所述监控台客户端的配置包括:
...【技术特征摘要】
1.一种聚合型微服务统一监控台,其特征在于,所述监控台是一个可视化的用户操作界面,用于统一监控和展示微服务架构中各个微服务的运行数据并对异常进行报警;所述监控台包括依次连接的用于接收微服务运行数据的数据接收模块、用于读取数据接收模块的数据并对数据进行分发的数据分发模块、用于接收数据分发模块分发的数据并对数据进行分析和展示的数据分析和展示模块以及用于微服务异常报警的报警模块;所述监控台还包括微服务连接配置模块,所述微服务连接配置模块提供预埋数据接口并用于将数据接收模块与微服务建立连接,并为微服务提供无侵入埋点;
2.根据权利要求1所述的聚合型微服务统一监控台,其特征在于,所述用户配置模块可根据用户的需求对要监控的微服务进行增加或减少,所述微服务对应的监控功能也可根据用户的需求进行增加或减少。
3.根据权利要求2所述的聚合型微服务统一监控台,其特征在于,所述的监控功能包括:基本功能和增强功能;所述基本功能包括:内存、cpu、磁盘、网络、配置、缓存、日志、jvm、版本、健康、依赖中间件状态、元数据;所述增强功能包括:sql性能监控、http请求性能监控、spring函数性能、reids缓存主备切换、数据库db主备切换、消息队列mq主备切换、异常日志收集汇总、数据库连接池状态、依赖lib合规性检查、优雅停机、在线api接口列表展示、数据库账号状态、findbugs缺陷报告展示、防火墙配置、关联git信息展示、jmeter压力测试、exception监控、静态应用安全测试。
4.根据权利要求3所述的聚合型微服务统一监控台,其特征在于,所述sql性能监控通过对接知识库系统,针对exception信息、性能差sql给出推荐解决方案,sql性能监控数据通过读取数据库连接池来获取;所述http请求性能监控数据、spring函数性能数据、异常日志收集汇总数据通过读取jvm的代理程序获取;所述redis缓存主备切换,通过改变重写redistemplate.setconnectionfactory实现用户无感秒切;数据库db主备切换,通过改变重写datasource实现用户无感秒切;消息队列mq主备切换,通过改变重写mqconnectio...
【专利技术属性】
技术研发人员:李远正,
申请(专利权)人:上海中远海运资讯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。