opensearch-project / opensearch-project/data-prepper
Support an additional manual circuit breaker
@dlvenable is already working on this.
Since Feb 17, 2024.
- Dominant language
- Java
- Stars
- 374
- Forks
- 354
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 8
Description
Is your feature request related to a problem? Please describe.
Initially, I'd like to be able to test the circuit breaker behavior using manual controls. Additionally, there may be value in stopping a pipeline temporarily.
Describe the solution you'd like
Provide an HTTP endpoint for opening and closing a circuit breaker.
First, it should be enabled in data-prepper-config.yaml:
circuit_breakers:
http_forced:
enabled: true
Then to open the circuit breaker:
curl -X POST http://localhost:4900/circuit_breaker/forced
Then to close the circuit breaker:
curl -X DELETE http://localhost:4900/circuit_breaker/forced
Describe alternatives you've considered (Optional)
Provide a full override of all circuit breakers. But, this could result in running out of memory.
I'd like to see if there is a better name. Right now, I'm calling it "forced," but I think we could do better.
Another idea would be to set the circuit breaker with a timeout. I tend to think this might be a completely different circuit breaker so that the forced one is not interfered with.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.