addons

package
v0.0.0-...-b0bff92 Latest Latest
Warning

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

Go to latest
Published: Dec 7, 2021 License: AGPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultIntrospectionSocketName

func DefaultIntrospectionSocketName(entityTag names.Tag) string

DefaultIntrospectionSocketName returns the socket name to use for the abstract domain socket that the introspection worker serves requests over.

func NewPrometheusRegistry

func NewPrometheusRegistry() (*prometheus.Registry, error)

NewPrometheusRegistry returns a new prometheus.Registry with the Go and process metric collectors registered. This registry is exposed by the introspection abstract domain socket on all Linux agents.

func StartIntrospection

func StartIntrospection(cfg IntrospectionConfig) error

StartIntrospection creates the introspection worker. It cannot and should not be in the engine itself as it reports on the engine, and other aspects of the runtime. If we put it in the engine, then it is mostly likely shut down in the times we need it most, which is when the agent is having problems shutting down. Here we effectively start the worker and tie its life to that of the engine that is returned.

Types

type IntrospectionConfig

type IntrospectionConfig struct {
	AgentTag           names.Tag
	Engine             *dependency.Engine
	StatePoolReporter  introspection.Reporter
	PubSubReporter     introspection.Reporter
	MachineLock        machinelock.Lock
	PrometheusGatherer prometheus.Gatherer
	PresenceRecorder   presence.Recorder
	Clock              clock.Clock
	LocalHub           *pubsub.SimpleHub
	CentralHub         *pubsub.StructuredHub
	LeaseFSM           *raftlease.FSM

	NewSocketName func(names.Tag) string
	WorkerFunc    func(config introspection.Config) (worker.Worker, error)
}

IntrospectionConfig defines the various components that the introspection worker reports on or needs to start up.

Jump to

Keyboard shortcuts

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