Open ajit-pendse opened 1 week ago
I could find a workaround and the underlying issue. This occurs mainly due to implementation in this method - org.wso2.micro.integrator.observability.metric.handler.MetricHandler#getApiName
. This method only checks for non-Null version - however, version-type
set to none
in the API actually returns an empty string for version. This leads to the apiContextPath
being appended with a `/'. This fails the equality test later in the method and is unable to find the correct API.
Updating version-type="url"
and version="1"
in the API definition and invoking API with URI ending with /1
made this work.
To make non-versioned APIs will mostly need a fix to check for empty string as well.
@ajit-pendse This issue is already fixed via https://github.com/wso2/micro-integrator/pull/3627. It is also available as an U2 update for MI 4.3.0
Great! Thanks for the quick response.
Description
New project is created with a simple Endpoint and API calling this endpoint, hosted on local Micro Integrator through Integration Studio.
While consuming API, client receives a HTTP 500 Error code with body as -
In the server console, following stacktrace is printed -
Steps to Reproduce
Version
4.3.0
Environment Details (with versions)
OS - Mac OS Sequoia 15.1 Integration Studio - 8.3.0 Java/JRE - openjdk version "17.0.13" 2024-10-15 OpenJDK Runtime Environment Homebrew (build 17.0.13+0) OpenJDK 64-Bit Server VM Homebrew (build 17.0.13+0, mixed mode, sharing)