Documentation
¶
Index ¶
Constants ¶
View Source
const ( // ProviderLaunchDarkly is used to indicate the LaunchDarkly provider. ProviderLaunchDarkly = "launchdarkly" // ProviderPostHog is used to indicate the PostHog provider. ProviderPostHog = "posthog" )
Variables ¶
View Source
var ( ProvidersFeatureFlags = wire.NewSet( ProvideFeatureFlagManager, ) )
Functions ¶
func ProvideFeatureFlagManager ¶
func ProvideFeatureFlagManager(ctx context.Context, c *Config, logger logging.Logger, tracerProvider tracing.TracerProvider, metricsProvider metrics.Provider, httpClient *http.Client) (featureflags.FeatureFlagManager, error)
func RegisterFeatureFlagManager ¶
RegisterFeatureFlagManager registers a featureflags.FeatureFlagManager with the injector.
Types ¶
type Config ¶
type Config struct {
LaunchDarkly *launchdarkly.Config `env:"init" envPrefix:"LAUNCH_DARKLY" json:"launchDarkly"`
PostHog *posthog.Config `env:"init" envPrefix:"POSTHOG_" json:"posthog"`
Provider string `env:"PROVIDER" json:"provider"`
CircuitBreaker circuitbreaking.Config `env:"init" envPrefix:"CIRCUIT_BREAKING_" json:"circuitBreakingConfig"`
}
Config configures our feature flag manager.
func (*Config) EnsureDefaults ¶
func (cfg *Config) EnsureDefaults()
EnsureDefaults sets sensible defaults for zero-valued fields.
func (*Config) ProvideFeatureFlagManager ¶
func (c *Config) ProvideFeatureFlagManager(logger logging.Logger, tracerProvider tracing.TracerProvider, httpClient *http.Client, circuitBreaker circuitbreaking.CircuitBreaker) (featureflags.FeatureFlagManager, error)
Click to show internal directories.
Click to hide internal directories.