1.spring.cloud.alibaba.版本2.2.1.RELEAS在用Micrometer 集成 Prometheus監控的時候,遇到prometheus的數據沒法解析,報錯緣由是:supportedMediaTypes支持的類型不存在。
2.springBoot在集成Prometheus監控時,訪問http://localhost:80/actuator/prometheus 時,報錯
【org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class java.lang.String] with preset Content-Type 'null'】java
二者的問題都在於[prometheus的數據沒法解析,supportedMediaTypes支持的類型不存在。]
1.根據錯誤信息查看:
org.springframework.web.servlet.mvc.method.annotation.AbstractMessageConverterMethodProcessor的方法writeWithMessageConvertersweb
`Could not find acceptable representation`
HttpMessageNotWritableException: No converter for [class java.lang.String] with preset Content-Type 'null'
解決Could not find acceptable representation
出現這種異常的緣由是由於在你的項目中,直接new MappingJackson2HttpMessageConverter對象,沒有設置它的MediaType,使得它只支持MediaType.APPLICATION_JSON一種類型而缺乏其餘的mediaTypes類型。spring
將丟失的mediaTypes類型都加到MappingJackson2HttpMessageConverter。bash
List<MediaType> mediaTypes = Arrays.asList( MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN, MediaType.TEXT_HTML, MediaType.TEXT_XML, MediaType.APPLICATION_OCTET_STREAM); jackson2HttpMessageConverter.setSupportedMediaTypes(mediaTypes);
參考連接:https://blog.csdn.net/shenhonglei1234/article/details/105828795
https://blog.csdn.net/shenhonglei1234/article/details/106922919mvc