问题排查不再愁,Nacos 上线推送轨迹功能

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 微服务体系下,注册中心的调用和配置变更是家常便饭,例如阿里每天就有百万级变更、亿级推送。可是,一旦出现调用或配置异常,问题排查就成了用户最大的困惑:是注册和配置中心导致的,还是上下游业务自身的问题呢?

作者:严达


背景


注册配置千千万,唯有推送轨迹最解愁。


微服务体系下,注册中心的调用和配置变更是家常便饭,例如阿里每天就有百万级变更、亿级推送。可是,一旦出现调用或配置异常,问题排查就成了用户最大的困惑:是注册和配置中心导致的,还是上下游业务自身的问题呢?


1.png

微服务体系下用户排查问题时的困惑


因此,长时间以来,用户对注册和配置中心推送功能的可观测性,有了越来越强烈的需求。

业内现有的开源方案


当前,业内其他主流的开源注册或配置中心,例如 Zookeeper、Eureka、Consul、Apollo 在核心功能推送情况上,仅提供了一些散落的日志,并没有查询推送成功与否的能力。一旦出现调用或配置异常,只能通过手动登录到注册和配置中心的节点上,以较为原始的日志方式来查寻推送相关的信息。如果用户对注册和配置中心的源码及日志内容的具体情况不了解,则会使问题排查的难度大大增加。


基于上述背景,Nacos 在业内首次推出注册和配置中心的推送轨迹功能。

推送轨迹功能介绍


推送轨迹,是指 Nacos 服务或配置从 server 端到 client 端的一次推送链路上的相关信息展示。推送轨迹可以让用户非常方便的查询到:


  • 注册中心服务推送的信息
  • 配置中心的配置变更发布和推送的信息


从而非常清晰地观测到 Nacos 推送功能的履约情况,极大的提高问题的排查效率。


注册中心推送轨迹


注册中心的推送轨迹,可以用来排查服务推送的相关问题,例如:


  • 客户端未收到服务推送
  • 服务间调用出现异常
  • 注册中心是否正常将服务推送到客户端


2.png

MSE - Nacos 注册中心推送轨迹查询页面


MSE - Nacos 注册中心推送轨迹,详细展示了注册中心服务推送的记录信息。其中,推送时间字段是本次推送事件发生的时间,推送客户端 IP 字段是本次推送所送达的客户端 IP 地址,推送服务名称是本次推送的服务名称,推送服务分组是本次推送服务的所属分组名称,服务实例数量是只本次推送服务中所包含的实例 IP 数量,节点名称是产生本次推送的 Naocs 节点名称。


同时,MSE - Nacos  注册中心推送轨迹也支持服务与 IP 多维度的查询。


配置中心推送轨迹


配置中心的推送轨迹,可以用来排查配置中心配置变更和发布的相关问题,例如:


  • 配置发布异常
  • 配置修改完发现某台机器不生效
  • 需要查看配置中心变更及推送事件


  • 配置维度查询


可以查询和该配置相关的变更事件以及对客户单端 IP 的推送记录。


3.png

MSE - Nacos 配置中心推送轨迹配置维度查询页面


MSE - Nacos 配置中心推送轨迹详细展示了配置中心配置变更的记录信息。在推送轨迹页面左侧,展示当前时间段内的配置变更事件 ,点击左侧变更流水可以定位到右侧的变更及推送事件记录。页面右侧,展示当前时间段内的配置变更及推送事件,变更事件中显示本次变更内容的 MD5 值,推送事件中展现推送发生事件,推送到的客户端 IP。鼠标上移推送详情图标可以查看本地推送中,客户端获取到的配置内容 MD5。


  • IP 维度查询


可以根据 IP 查询所有和该 IP 地址相关的推送轨迹 。


4.png

配置中心推送轨迹 IP 维度查询页面


在推送轨迹 IP 查询维度页面,展示该 IP 地址相关的推送轨迹 。变更时间表示本次配置变更所发生的时间,变更时间表示本次配置变更事件类型,DataId 表示该配置变更事件的配置 DataId,Group 表示该配置变更事件的配置所属分组,点击详情列信息按钮可以看到详情图标可以看到本次变更事件详细信息,点击详情列跳转按钮可以切换到配置维度查询的入口查询当前配置在该时间点的推送事件。


推送轨迹最佳实践


注册中心推送轨迹


  1. 登录 MSE 管理控制台。
  2. 在顶部菜单栏选择地域。
  3. 在左侧菜单栏选择注册配置中心 > 实例列表。单击目标实例名称或操作列下方的管理。
  4. 在左侧边栏基础信息页面选择服务管理 > 推送轨迹,进入推送轨迹功能页面。
  5. 或者在左侧边栏基础信息页面选择服务管理 > 服务列表,在每条服务信息的右侧点击推送轨迹按钮,进入推送轨迹功能页面。
  6. 进入推送轨迹功能页面后,单击查询维度下拉框选择查询维度:服务,在左上角服务名称输入框输入待查询服务的名称,在分组名称输入框输入服务所属的分组,然后再右上角时间控件中选择要查询的时间范围,最后点击查询按钮。


在查询维度下拉框内,也可以选择查询维度:IP,则表示查询该客户端收到的全部推送信息。


配置中心推送轨迹


  1. 登录 MSE 管理控制台。
  2. 在顶部菜单栏选择地域。
  3. 在左侧菜单栏选择注册配置中心 > 实例列表。单击目标实例名称或操作列下方的管理。
  4. 在基础信息页面选择配置管理 > 推送轨迹。单击查询维度下拉框选择查询维度:配置,然后在 Data ID 输入待查询配置的数据 ID,在 Group 输入配置所属的分组,最后单击搜索图标进行搜索。


推送轨迹只是第一步,后续,MSE - Nacos 还将提供全新的自诊系统,包括事件统计、健康审计等功能,帮助用户更加全面的获取注册和配置中心运行时上更多的业务功能状态数据信息,降低注册和配置中心的问题排查难度、提升可用性。


钉钉扫码加入 Nacos 社区群


6.jpeg


相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
1月前
|
Dubbo 关系型数据库 MySQL
nacos常见问题之命名空间配置数据上线修改如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
92 1
|
1月前
|
Kubernetes Java Nacos
nacos常见问题之通过helm方式部署设置开启授权认证功能如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
54 0
|
6月前
|
Cloud Native Java Go
解决Nacos配置刷新问题: 如何启用配置刷新功能以及与`@RefreshScope`注解的关联问题
解决Nacos配置刷新问题: 如何启用配置刷新功能以及与`@RefreshScope`注解的关联问题
519 0
|
4月前
|
关系型数据库 MySQL 数据库连接
只用了nacos配置功能,多个nacos server连同一个mysql数据库会有啥问题吗?
只用了nacos配置功能,多个nacos server连同一个mysql数据库会有啥问题吗?
105 6
|
9月前
|
SpringCloudAlibaba 网络协议 Cloud Native
springCloudAlibaba组件-Nacos-功能概述与配置(一)
springCloudAlibaba组件-Nacos-功能概述与配置(一)
|
10月前
|
Java Nacos Spring
使用Spring Boot的Profile功能来实现不同环境使用不同的Nacos Namespace的配置
使用Spring Boot的Profile功能来实现不同环境使用不同的Nacos Namespace的配置
386 1
|
11月前
|
负载均衡 算法 Java
Spring Cloud Alibaba - 12 使用Nacos的元数据实现金丝雀发布功能
Spring Cloud Alibaba - 12 使用Nacos的元数据实现金丝雀发布功能
336 0
|
Cloud Native Nacos 微服务
问题排查不再愁,Nacos 上线推送轨迹功能
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
|
存储 缓存 JSON
08篇 要给Nacos的UDP通信功能点个赞
08篇 要给Nacos的UDP通信功能点个赞
349 0
08篇 要给Nacos的UDP通信功能点个赞
|
存储 缓存 JSON
08篇 要给Nacos的UDP通信功能点个赞
08篇 要给Nacos的UDP通信功能点个赞
552 0
08篇 要给Nacos的UDP通信功能点个赞