Versions in this module Expand all Collapse all v0 v0.7.0 May 25, 2023 Changes in this version + const DefaultGoBreakerInterval + const DefaultGoBreakerMaxRequests + const DefaultGoBreakerName + const DefaultGoBreakerTimeout + func DefaultReadyToTrip(counts gobreaker.Counts) bool + type Breaker interface + Execute func(req func() error) error + type ClientOption func(*HTTPClient) + func WithCircuitBreaker(cb Breaker) ClientOption + func WithHTTPRequestDoer(client HTTPRequestDoer) ClientOption + type GoBreaker struct + func NewGoBreaker(opts ...GoBreakerOption) *GoBreaker + func (gb *GoBreaker) Execute(req func() error) error + type GoBreakerOnStateChangeFunc func(name string, from gobreaker.State, to gobreaker.State) + type GoBreakerOption func(*GoBreaker) + func WithGoBreakerInterval(interval time.Duration) GoBreakerOption + func WithGoBreakerMaxRequests(maxRequests uint32) GoBreakerOption + func WithGoBreakerName(name string) GoBreakerOption + func WithGoBreakerOnStateChange(onStateChange GoBreakerOnStateChangeFunc) GoBreakerOption + func WithGoBreakerReadyToTrip(readyToTrip GoBreakerReadyToTripFunc) GoBreakerOption + func WithGoBreakerTimeout(timeout time.Duration) GoBreakerOption + type GoBreakerReadyToTripFunc func(counts gobreaker.Counts) bool + type HTTPClient struct + func NewHTTPClient(opts ...ClientOption) *HTTPClient + func (hc *HTTPClient) Do(req *http.Request) (response *http.Response, err error) + type HTTPRequestDoer interface + Do func(req *http.Request) (*http.Response, error)