Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CollectorPlugin ¶
CollectorPlugin implements hashicorp/go-plugin's Plugin interface for metrics.Collector
func (CollectorPlugin) Client ¶
func (CollectorPlugin) Client(_ *plugin.MuxBroker, c *rpc.Client) (interface{}, error)
func (*CollectorPlugin) Server ¶
func (p *CollectorPlugin) Server(*plugin.MuxBroker) (interface{}, error)
type ConfigurableExperimentRunner ¶
type ConfigurableExperimentRunner interface { shared.Configurable runner.ExperimentRunner }
ConfigurableExperimentRunner interface of an ExperimentRunner, that can be configured with an arbitrary configuration passed as a JSON data
func NewConfigurableExperimentRunner ¶
func NewConfigurableExperimentRunner( factory func(json.RawMessage) (runner.ExperimentRunner, error), ) ConfigurableExperimentRunner
type ExperimentRunnerPlugin ¶
type ExperimentRunnerPlugin struct {
Impl ConfigurableExperimentRunner
}
ExperimentRunnerPlugin implements hashicorp/go-plugin's Plugin interface for runner.ExperimentRunner
func (ExperimentRunnerPlugin) Client ¶
func (ExperimentRunnerPlugin) Client(b *plugin.MuxBroker, c *rpc.Client) (interface{}, error)
func (*ExperimentRunnerPlugin) Server ¶
func (p *ExperimentRunnerPlugin) Server(b *plugin.MuxBroker) (interface{}, error)
type GetTreatmentRequest ¶
type GetTreatmentRequest struct { Header http.Header Payload []byte Options runner.GetTreatmentOptions }
GetTreatmentRequest is a struct, used to pass the data required by ExperimentRunner.GetTreatmentForRequest() between RPC client and server
type IncRequest ¶
type IncRequest struct { Key metrics.MetricName Labels map[string]string }
IncRequest is a struct, used to pass the data required by Collector.Inc() between RPC client and server
type MeasureDurationMsRequest ¶
type MeasureDurationMsRequest struct { Key metrics.MetricName Labels map[string]func() string }
MeasureDurationMsRequest is a struct, used to pass the data required by Collector.MeasureDurationMs() between RPC client and server
type MeasureDurationMsSinceRequest ¶
type MeasureDurationMsSinceRequest struct { Key metrics.MetricName Starttime time.Time Labels map[string]string }
MeasureDurationMsSinceRequest is a struct, used to pass the data required by Collector.MeasureDurationMsSince() between RPC client and server
type MetricsRegistrationHelperPlugin ¶
type MetricsRegistrationHelperPlugin struct {
Impl runner.MetricsRegistrationHelper
}
MetricsRegistrationHelperPlugin implements hashicorp/go-plugin's Plugin interface for runner.MetricsRegistrationHelper
func (MetricsRegistrationHelperPlugin) Client ¶
func (MetricsRegistrationHelperPlugin) Client(_ *plugin.MuxBroker, c *rpc.Client) (interface{}, error)
func (*MetricsRegistrationHelperPlugin) Server ¶
func (p *MetricsRegistrationHelperPlugin) Server(*plugin.MuxBroker) (interface{}, error)
type RecordGaugeRequest ¶
type RecordGaugeRequest struct { Key metrics.MetricName Value float64 Labels map[string]string }
RecordGaugeRequest is a struct, used to pass the data required by Collector.RecordGauge() between RPC client and server