adapters

package
v0.2.2 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2025 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AuroraCollectors

func AuroraCollectors(adapter *AuroraRDSAdapter) []agent.MetricCollector

func DefaultCollectors

func DefaultCollectors(pgAdapter *DefaultPostgreSQLAdapter) []agent.MetricCollector

func DockerCollectors

func DockerCollectors(adapter *DockerContainerAdapter) []agent.MetricCollector

DockerCollectors returns the list of collectors for Docker, replacing system metrics with Docker-specific ones while keeping database-specific collectors

Types

type AuroraRDSAdapter

type AuroraRDSAdapter struct {
	DefaultPostgreSQLAdapter
	// contains filtered or unexported fields
}

func CreateAuroraRDSAdapter

func CreateAuroraRDSAdapter() (*AuroraRDSAdapter, error)

func (*AuroraRDSAdapter) APIClient

func (adapter *AuroraRDSAdapter) APIClient() *retryablehttp.Client

func (*AuroraRDSAdapter) ApplyConfig

func (adapter *AuroraRDSAdapter) ApplyConfig(proposedConfig *agent.ProposedConfigResponse) error

func (*AuroraRDSAdapter) GetAuroraRDSConfig

func (adapter *AuroraRDSAdapter) GetAuroraRDSConfig() *adapters.AuroraRDSConfig

func (*AuroraRDSAdapter) GetAuroraState

func (adapter *AuroraRDSAdapter) GetAuroraState() *adapters.AuroraRDSState

func (*AuroraRDSAdapter) GetCWClient

func (adapter *AuroraRDSAdapter) GetCWClient() *cloudwatch.Client

func (*AuroraRDSAdapter) GetEC2Client

func (adapter *AuroraRDSAdapter) GetEC2Client() *ec2.Client

func (*AuroraRDSAdapter) GetEC2InstanceTypeInfo

func (adapter *AuroraRDSAdapter) GetEC2InstanceTypeInfo() (*ec2types.InstanceTypeInfo, error)

func (*AuroraRDSAdapter) GetPIClient

func (adapter *AuroraRDSAdapter) GetPIClient() *pi.Client

func (*AuroraRDSAdapter) GetRDSClient

func (adapter *AuroraRDSAdapter) GetRDSClient() *rds.Client

func (*AuroraRDSAdapter) GetSystemInfo

func (adapter *AuroraRDSAdapter) GetSystemInfo() ([]utils.FlatValue, error)

func (*AuroraRDSAdapter) Guardrails

func (adapter *AuroraRDSAdapter) Guardrails() *agent.GuardrailType

Guardrails checks memory utilization and returns Critical if thresholds are exceeded

func (*AuroraRDSAdapter) PGDriver

func (adapter *AuroraRDSAdapter) PGDriver() *pgPool.Pool

type DefaultPostgreSQLAdapter

type DefaultPostgreSQLAdapter struct {
	agent.CommonAgent

	GuardrailConfig GuardrailSettings
	// contains filtered or unexported fields
}

func CreateDefaultPostgreSQLAdapter

func CreateDefaultPostgreSQLAdapter() (*DefaultPostgreSQLAdapter, error)

func (*DefaultPostgreSQLAdapter) APIClient

func (adapter *DefaultPostgreSQLAdapter) APIClient() *retryablehttp.Client

func (*DefaultPostgreSQLAdapter) ApplyConfig

func (adapter *DefaultPostgreSQLAdapter) ApplyConfig(proposedConfig *agent.ProposedConfigResponse) error

func (*DefaultPostgreSQLAdapter) GetActiveConfig

func (adapter *DefaultPostgreSQLAdapter) GetActiveConfig() (agent.ConfigArraySchema, error)

func (*DefaultPostgreSQLAdapter) GetSystemInfo

func (adapter *DefaultPostgreSQLAdapter) GetSystemInfo() ([]utils.FlatValue, error)

func (*DefaultPostgreSQLAdapter) Guardrails

func (adapter *DefaultPostgreSQLAdapter) Guardrails() *agent.GuardrailType

Guardrails for default PostgreSQL adapter performs the following: 1. Checks if the total memory is set. If not fetches it from the system and sets it in cache. 2. Fetches current memory usage 3. If memory usage is greater than 90% of total memory, triggers a critical guardrail

func (*DefaultPostgreSQLAdapter) PGDriver

func (adapter *DefaultPostgreSQLAdapter) PGDriver() *pgPool.Pool

type DockerContainerAdapter

type DockerContainerAdapter struct {
	DefaultPostgreSQLAdapter
	ContainerName string
	// contains filtered or unexported fields
}

DockerContainerAdapter works with the container name and by communicating with the docker Unix socket to get stats like memory usage, number of CPUs available and memory limit

func CreateDockerContainerAdapter

func CreateDockerContainerAdapter() (*DockerContainerAdapter, error)

func (*DockerContainerAdapter) ApplyConfig

func (d *DockerContainerAdapter) ApplyConfig(proposedConfig *agent.ProposedConfigResponse) error

func (*DockerContainerAdapter) GetContainerName

func (d *DockerContainerAdapter) GetContainerName() string

func (*DockerContainerAdapter) GetDockerClient

func (d *DockerContainerAdapter) GetDockerClient() *client.Client

func (*DockerContainerAdapter) GetSystemInfo

func (d *DockerContainerAdapter) GetSystemInfo() ([]utils.FlatValue, error)

func (*DockerContainerAdapter) Guardrails

func (d *DockerContainerAdapter) Guardrails() *agent.GuardrailType

type GuardrailSettings added in v0.2.2

type GuardrailSettings struct {
	MemoryThreshold float64 `mapstructure:"memory_threshold" validate:"gte=1,lte=100"`
}

type PostgreSQLConfig

type PostgreSQLConfig struct {
	ConnectionURL string `mapstructure:"connection_url" validate:"required"`
	ServiceName   string `mapstructure:"service_name"`
}

Jump to

Keyboard shortcuts

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