dream11 / kong-circuit-breaker Goto Github PK
View Code? Open in Web Editor NEWKong plugin for wrapping all proxy calls with a circuit-breaker
Home Page: https://dream11.github.io/kong-circuit-breaker/
License: MIT License
Kong plugin for wrapping all proxy calls with a circuit-breaker
Home Page: https://dream11.github.io/kong-circuit-breaker/
License: MIT License
kong-circuit-breaker
does not work along OAuth2 kong plugin. Paths where OAuth2 its set,
kong-circuit-breaker
api_call_timeout_ms` does not apply
Kong Enterprise 2.7.0.0
I have an API endpoint as follows: https://test-cb.example.com/kong-circuit-breaker/api/v2/<-user-id-as-a-path-variable->
and I have an ingress for this endpoint as mentioned below:
kind: Ingress
apiVersion: extensions/v1beta1
metadata:
name: test-ingress
namespace: stage
annotations:
konghq.com/plugins: circuit-breaker-stage
spec:
ingressClassName: kong-internal
tls:
- hosts:
- test-cb.example.com
rules:
- host: test-cb.example.com
http:
paths:
- path: /kong-circuit-breaker/api/v2/
pathType: ImplementationSpecific
backend:
serviceName: stage-user-service
servicePort: 80
and circuit-breaker config as below:
apiVersion: configuration.konghq.com/v1
kind: KongPlugin
metadata:
namespace: stage
name: circuit-breaker-stage
config:
window_time: 30
api_call_timeout_ms: 2000
min_calls_in_window: 10
failure_percent_threshold: 51
wait_duration_in_open_state: 60
wait_duration_in_half_open_state: 90
half_open_min_calls_in_window: 5
half_open_max_calls_in_window: 10
error_status_code: 599
excluded_apis: '{"GET_/kong-circuit-breaker/actuator/health": true}'
plugin: circuit-breaker
I'm have added kong-circuit-breaker for the above route and tried testing it and found out that each request URL for this route is having independent circuit-breaker state maintained where my expectation was that single circuit breaker state will be maintained for the route/routes configured in ingress instead for each request URL.
Is there a way to specify in kong-circuit-breaker to maintain the state of circuit-breaker for aggregated count of all the requests made to the API with the path specified in Ingress.
Example: Irrespective of user-Id in the following path: kong-circuit-breaker/api/v2/<-user-id-as-a-path-variable->, the circuit-breaker should open, if the failure percentage reaches the threshold for this API.
Whereas the current behaviour is that the circuit-breaker for the API with path: kong-circuit-breaker/api/v2/adam123 is open, while the same API with path: kong-circuit-breaker/api/v2/maria456 is allowing the requests to the service.
PS: I'm not sure if this issue has to be submitted as a bug or feature request.
Thanks.
This action increases the version of dependencies also in the rockspec file if the version coincides with the version of the plugin
If a timeout is triggered,when I disabled this plugin,it also say "The upstream server is timing out".
Very urgent
$ kong 2.4.1
)$ kong start --vv
)<KONG_PREFIX>/logs/error.log
)A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.