Open kyuengmanKim opened 2 months ago
해당 시나리오 실행중 cb-tb를 통해 조회된 vm에 mc-agent 설치 요청에 문제가 있어 이슈 남깁니다.
curl --location 'http://myhost:18080/api/o11y/monitoring/monprj/monmci02/target/monvm-1' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"name": "monvm-1",
"alias_name": "monvm-1",
"description": "monvm-1"
}'
****** | ****** ERROR ****** --- [******] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is feign.codec.DecodeException: Error while extracting response for type [class ******.TumblebugMCI] and content type [application/json;charset=UTF-8]; nested exception is org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Cannot deserialize value of type `java.lang.String` from Object value (token `JsonToken.START_OBJECT`); nested exception is com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize value of type `java.lang.String` from Object value (token `JsonToken.START_OBJECT`)
at [Source: (org.springframework.util.StreamUtils$NonClosingInputStream); line: 1, column: 443] (through reference chain: ******.TumblebugMCI["label"])] with root cause
com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize value of type `java.lang.String` from Object value (token `JsonToken.START_OBJECT`)
at [Source: (org.springframework.util.StreamUtils$NonClosingInputStream); line: 1, column: 443] (through reference chain: ******.TumblebugMCI["label"])
...
{
"timestamp": "UTC",
"status": 500,
"error": "Internal Server Error",
"path": "/api/o11y/monitoring/monprj/monmci02/target/monvm-1"
}
TumblebugMCI 모델 클래스의 label 필드가 String으로 정의되어 있지만, JSON 응답에서 해당 필드가 객체(Object)로 반환되고 있습니다. Jackson이 타입 불일치를 처리하지 못해 MismatchedInputException이 발생하고 있습니다.
모델 클래스 수정 TumblebugMCI 클래스의 label 필드를 Object 또는 적절한 객체 타입으로 변경합니다.
커스텀 Deserializer 사용 다양한 타입이 올 수 있는 상황이라면, Jackson의 커스텀 Deserializer를 통해 상황에 맞게 데이터를 처리할 수 있습니다.
감사합니다.
mc-observability monitoring & logging API usage scenarios
API Swagger: mc-observability-swagger
mc-observability monitoring
모니터링 관련 시나리오는 다음과 같습니다.
mc-observability logging
로깅 관련 시나리오는 다음과 같습니다.
상세 진행 과정은 다음 링크를 참고해주세요. (MCMP-Agent Use)