全局JSON序列化导致prometheus数据格式错乱
创始人
2024-03-03 11:03:22
0

现象

现场配置完prometheus端点后,返回数据格式乱了,如下图所示
在这里插入图片描述

正常结果数据如下图所示
在这里插入图片描述

分析

在单个微服务上访问prometheus端点数据返回格式正常。在小型化化格式返回就错乱了。数据返回格式是由消息转化统一处理的。在小型化工程中,对Long类型序列化统一进行了处理。
在这里插入图片描述
configureMessageConverters这个方法文档是这么写的:

配置HttpMessageConverters以用于对请求或响应的主体进行读写。如果没有添加转换器,则注册一个默认的转换器列表。

注意,向列表中添加转换器时关闭默认转换器注册。简单地添加一个转换器而不产生影响默认注册时,考虑使用extendMessageConverters方法

默认消息转化器位于org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport#addDefaultHttpMessageConverters

在这里插入图片描述

即使用上述方法添加HttpMessageConverter将会覆盖掉默认添加的HttpMessageConverter。所以在代码使用configureMessageConverters即只配置了json消息转化器,会对所有响应进行json序列化。

解决

configureMessageConverters方法替换为extendMessageConverters,对消息转化进行扩展

增加以下代码:

converters.removeIf(converter -> converter instanceof MappingJackson2HttpMessageConverter);

在这里插入图片描述

相关内容

热门资讯

美国2年期国债收益率上涨15个... 原标题:美国2年期国债收益率上涨15个基点 美国2年期国债收益率上涨15个基...
汽车油箱结构是什么(汽车油箱结... 本篇文章极速百科给大家谈谈汽车油箱结构是什么,以及汽车油箱结构原理图解对应的知识点,希望对各位有所帮...
嵌入式 ADC使用手册完整版 ... 嵌入式 ADC使用手册完整版 (188977万字)💜&#...
重大消息战皇大厅开挂是真的吗... 您好:战皇大厅这款游戏可以开挂,确实是有挂的,需要了解加客服微信【8435338】很多玩家在这款游戏...
盘点十款牵手跑胡子为什么一直... 您好:牵手跑胡子这款游戏可以开挂,确实是有挂的,需要了解加客服微信【8435338】很多玩家在这款游...
senator香烟多少一盒(s... 今天给各位分享senator香烟多少一盒的知识,其中也会对sevebstars香烟进行解释,如果能碰...
终于懂了新荣耀斗牛真的有挂吗... 您好:新荣耀斗牛这款游戏可以开挂,确实是有挂的,需要了解加客服微信8435338】很多玩家在这款游戏...
盘点十款明星麻将到底有没有挂... 您好:明星麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【5848499】很多玩家在这款游戏...
总结文章“新道游棋牌有透视挂吗... 您好:新道游棋牌这款游戏可以开挂,确实是有挂的,需要了解加客服微信【7682267】很多玩家在这款游...
终于懂了手机麻将到底有没有挂... 您好:手机麻将这款游戏可以开挂,确实是有挂的,需要了解加客服微信【8435338】很多玩家在这款游戏...