transmit

package
v1.21.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 14, 2023 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DefaultTransmission

type DefaultTransmission struct {
	Config     config.Config   `inject:""`
	Logger     logger.Logger   `inject:""`
	Metrics    metrics.Metrics // constructed, not injected
	Version    string          `inject:"version"`
	LibhClient *libhoney.Client

	// This has to exist to fool the injection system into making sure this shows up later
	// than metrics on the injection graph. Have I mentioned how much I hate injection systems?
	FakeMetrics metrics.Metrics `inject:"metrics"`

	// Type is peer or upstream, and used only for naming metrics
	Name string
	// contains filtered or unexported fields
}

func NewDefaultTransmission added in v1.20.0

func NewDefaultTransmission(client *libhoney.Client, m metrics.Metrics, name string) *DefaultTransmission

func (*DefaultTransmission) EnqueueEvent

func (d *DefaultTransmission) EnqueueEvent(ev *types.Event)

func (*DefaultTransmission) EnqueueSpan

func (d *DefaultTransmission) EnqueueSpan(sp *types.Span)

func (*DefaultTransmission) Flush

func (d *DefaultTransmission) Flush()

func (*DefaultTransmission) Start

func (d *DefaultTransmission) Start() error

func (*DefaultTransmission) Stop

func (d *DefaultTransmission) Stop() error

type MockTransmission

type MockTransmission struct {
	Events []*types.Event
	Mux    sync.RWMutex
}

func (*MockTransmission) EnqueueEvent

func (m *MockTransmission) EnqueueEvent(ev *types.Event)

func (*MockTransmission) EnqueueSpan

func (m *MockTransmission) EnqueueSpan(ev *types.Span)

func (*MockTransmission) Flush

func (m *MockTransmission) Flush()

func (*MockTransmission) Start

func (m *MockTransmission) Start() error

type Transmission

type Transmission interface {
	// Enqueue accepts a single event and schedules it for transmission to Honeycomb
	EnqueueEvent(ev *types.Event)
	EnqueueSpan(ev *types.Span)
	// Flush flushes the in-flight queue of all events and spans
	Flush()
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL