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 ¶
This section is empty.
Functions ¶
func NewFeatureFlagManager ¶
func NewFeatureFlagManager(ctx context.Context, c *Config, logger logging.Logger, tracerProvider tracing.TracerProvider, metricsProvider metrics.Provider, httpClient *http.Client) (featureflags.FeatureFlagManager, error)
NewFeatureFlagManager provides a FeatureFlagManager from config.
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" yaml:"launchDarkly"`
PostHog *posthog.Config `env:",init" envPrefix:"POSTHOG_" json:"posthog" yaml:"posthog"`
Provider string `env:"PROVIDER" json:"provider" yaml:"provider"`
CircuitBreaker circuitbreakingcfg.Config `env:",init" envPrefix:"CIRCUIT_BREAKING_" json:"circuitBreakerConfig" yaml:"circuitBreakerConfig"`
}
Config configures our feature flag manager.
func (*Config) EnsureDefaults ¶
func (cfg *Config) EnsureDefaults()
EnsureDefaults sets sensible defaults for zero-valued fields.
func (*Config) NewFeatureFlagManager ¶
func (c *Config) NewFeatureFlagManager(logger logging.Logger, tracerProvider tracing.TracerProvider, metricsProvider metrics.Provider, httpClient *http.Client, circuitBreaker circuitbreaking.CircuitBreaker) (featureflags.FeatureFlagManager, error)
Click to show internal directories.
Click to hide internal directories.