As a Java backend developer, I want to add a property to the CircuitBreakerUrl class to act as a flag to throw (or not) an exception when the gotten response status from the HTTP client is not in the 2xx range. The default value for this property will be true to avoid breaking any existing functionality. When it's false, then it should not throw any exception and let the caller deal with the non-2xx HTTP status. Additionally, I want to leverage this user story to add some debugging information on the time elapsed when making requests to the CubeJS server.
Acceptance Criteria
Create a property in the CircuitBreakerUrl class to control exception throwing for non-2xx HTTP responses.
Set the default value of this property to true.
Update the AnalyticsAPI, EventLogRunnable, and CubeJSClient components to set the flag to false where needed.
Add logging for the time elapsed when making requests to the CubeJS server.
Ensure that the code changes are well-documented and unit tested.
User Story
As a Java backend developer, I want to add a property to the
CircuitBreakerUrl
class to act as a flag to throw (or not) an exception when the gotten response status from the HTTP client is not in the 2xx range. The default value for this property will be true to avoid breaking any existing functionality. When it's false, then it should not throw any exception and let the caller deal with the non-2xx HTTP status. Additionally, I want to leverage this user story to add some debugging information on the time elapsed when making requests to the CubeJS server.Acceptance Criteria
CircuitBreakerUrl
class to control exception throwing for non-2xx HTTP responses.AnalyticsAPI
,EventLogRunnable
, andCubeJSClient
components to set the flag to false where needed.dotCMS Version
master
Proposed Objective
Core Features
Proposed Priority
Priority 2 - Important
External Links
Link to Slack Conversations Link to Support Tickets Link to Figma Designs
Assumptions & Initiation Needs
Quality Assurance Notes & Workarounds
Sub-Tasks & Estimates
CircuitBreakerUrl
class - Estimated time: 2 hoursAnalyticsAPI
,EventLogRunnable
, andCubeJSClient
- Estimated time: 4 hours