serializer

package module
v0.52.1 Latest Latest
Warning

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

Go to latest
Published: Apr 3, 2024 License: Apache-2.0 Imports: 24 Imported by: 17

README

package serializer

The Serializer is in charge of routing payloads from the different parts of the agent to the Forwarder. The backend currently offers 2 versions of the intake API. The V1 version takes JSON payloads, the V2 take protocol buffer payloads or JSON depending on endpoint.

While moving all the existing endpoints to the new format, the agent will support both API. That is why the serializer is here to choose a serialization protocol depending on the content and use the correct Forwarder method.

To be sent, a payload needs to implement the Marshaler interface.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// AgentPayloadVersion is the versions of the agent-payload repository
	// used to serialize to protobuf
	AgentPayloadVersion string
)

Functions

This section is empty.

Types

type MetricSerializer

type MetricSerializer interface {
	SendEvents(e event.Events) error
	SendServiceChecks(serviceChecks servicecheck.ServiceChecks) error
	SendIterableSeries(serieSource metrics.SerieSource) error
	AreSeriesEnabled() bool
	SendSketch(sketches metrics.SketchesSource) error
	AreSketchesEnabled() bool

	SendMetadata(m marshaler.JSONMarshaler) error
	SendHostMetadata(m marshaler.JSONMarshaler) error
	SendProcessesMetadata(data interface{}) error
	SendAgentchecksMetadata(m marshaler.JSONMarshaler) error
	SendOrchestratorMetadata(msgs []types.ProcessMessageBody, hostName, clusterID string, payloadType int) error
	SendOrchestratorManifests(msgs []types.ProcessMessageBody, hostName, clusterID string) error
}

MetricSerializer represents the interface of method needed by the aggregator to serialize its data

type Serializer

type Serializer struct {
	Forwarder forwarder.Forwarder
	// contains filtered or unexported fields
}

Serializer serializes metrics to the correct format and routes the payloads to the correct endpoint in the Forwarder

func NewSerializer

func NewSerializer(forwarder forwarder.Forwarder, orchestratorForwarder orchestratorForwarder.Component, config config.Component, hostName string) *Serializer

NewSerializer returns a new Serializer initialized

func (*Serializer) AreSeriesEnabled

func (s *Serializer) AreSeriesEnabled() bool

AreSeriesEnabled returns whether series are enabled for serialization

func (*Serializer) AreSketchesEnabled

func (s *Serializer) AreSketchesEnabled() bool

AreSketchesEnabled returns whether sketches are enabled for serialization

func (*Serializer) SendAgentchecksMetadata

func (s *Serializer) SendAgentchecksMetadata(m marshaler.JSONMarshaler) error

SendAgentchecksMetadata serializes a metadata payload and sends it to the forwarder

func (*Serializer) SendEvents

func (s *Serializer) SendEvents(events event.Events) error

SendEvents serializes a list of event and sends the payload to the forwarder

func (*Serializer) SendHostMetadata

func (s *Serializer) SendHostMetadata(m marshaler.JSONMarshaler) error

SendHostMetadata serializes a metadata payload and sends it to the forwarder

func (*Serializer) SendIterableSeries

func (s *Serializer) SendIterableSeries(serieSource metrics.SerieSource) error

SendIterableSeries serializes a list of series and sends the payload to the forwarder

func (*Serializer) SendMetadata

func (s *Serializer) SendMetadata(m marshaler.JSONMarshaler) error

SendMetadata serializes a metadata payload and sends it to the forwarder

func (*Serializer) SendOrchestratorManifests

func (s *Serializer) SendOrchestratorManifests(msgs []types.ProcessMessageBody, hostName, clusterID string) error

SendOrchestratorManifests serializes & send orchestrator manifest payloads

func (*Serializer) SendOrchestratorMetadata

func (s *Serializer) SendOrchestratorMetadata(msgs []types.ProcessMessageBody, hostName, clusterID string, payloadType int) error

SendOrchestratorMetadata serializes & send orchestrator metadata payloads

func (*Serializer) SendProcessesMetadata

func (s *Serializer) SendProcessesMetadata(data interface{}) error

SendProcessesMetadata serializes a payload and sends it to the forwarder. Used only by the legacy processes metadata collector.

func (*Serializer) SendServiceChecks

func (s *Serializer) SendServiceChecks(serviceChecks servicecheck.ServiceChecks) error

SendServiceChecks serializes a list of serviceChecks and sends the payload to the forwarder

func (*Serializer) SendSketch

func (s *Serializer) SendSketch(sketches metrics.SketchesSource) error

SendSketch serializes a list of SketSeriesList and sends the payload to the forwarder

Directories

Path Synopsis
internal
metrics
Package metrics provides a set of functions to Marshal and Unmarshal metric events.
Package metrics provides a set of functions to Marshal and Unmarshal metric events.

Jump to

Keyboard shortcuts

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