disk

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: May 6, 2022 License: Apache-2.0, MIT, Apache-2.0, + 1 more Imports: 12 Imported by: 0

Documentation

Overview

Package disk implements an ipfs-cluster informer which can provide different disk-related metrics from the IPFS daemon as an api.Metric.

Index

Constants

View Source
const (
	DefaultMetricTTL  = 30 * time.Second
	DefaultMetricType = MetricFreeSpace
)

Default values for disk Config

Variables

This section is empty.

Functions

This section is empty.

Types

type Config added in v0.2.0

type Config struct {
	config.Saver

	MetricTTL  time.Duration
	MetricType MetricType
}

Config is used to initialize an Informer and customize the type and parameters of the metric it produces.

func (*Config) ApplyEnvVars added in v0.10.0

func (cfg *Config) ApplyEnvVars() error

ApplyEnvVars fills in any Config fields found as environment variables.

func (*Config) ConfigKey added in v0.2.0

func (cfg *Config) ConfigKey() string

ConfigKey returns a human-friendly identifier for this type of Metric.

func (*Config) Default added in v0.2.0

func (cfg *Config) Default() error

Default initializes this Config with sensible values.

func (*Config) LoadJSON added in v0.2.0

func (cfg *Config) LoadJSON(raw []byte) error

LoadJSON reads the fields of this Config from a JSON byteslice as generated by ToJSON.

func (*Config) ToDisplayJSON added in v0.13.0

func (cfg *Config) ToDisplayJSON() ([]byte, error)

ToDisplayJSON returns JSON config as a string.

func (*Config) ToJSON added in v0.2.0

func (cfg *Config) ToJSON() (raw []byte, err error)

ToJSON generates a JSON-formatted human-friendly representation of this Config.

func (*Config) Validate added in v0.2.0

func (cfg *Config) Validate() error

Validate checks that the fields of this Config have working values, at least in appearance.

type Informer

type Informer struct {
	// contains filtered or unexported fields
}

Informer is a simple object to implement the ipfscluster.Informer and Component interfaces.

func NewInformer

func NewInformer(cfg *Config) (*Informer, error)

NewInformer returns an initialized informer using the given InformerConfig.

func (*Informer) GetMetrics added in v0.14.2

func (disk *Informer) GetMetrics(ctx context.Context) []api.Metric

GetMetrics returns the metric obtained by this Informer. It must always return at least one metric.

func (*Informer) Name

func (disk *Informer) Name() string

Name returns the name of the metric issued by this informer.

func (*Informer) SetClient

func (disk *Informer) SetClient(c *rpc.Client)

SetClient provides us with an rpc.Client which allows contacting other components in the cluster.

func (*Informer) Shutdown

func (disk *Informer) Shutdown(ctx context.Context) error

Shutdown is called on cluster shutdown. We just invalidate any metrics from this point.

type MetricType added in v0.2.0

type MetricType int

MetricType identifies the type of metric to fetch from the IPFS daemon.

const (
	// MetricFreeSpace provides the available space reported by IPFS
	MetricFreeSpace MetricType = iota
	// MetricRepoSize provides the used space reported by IPFS
	MetricRepoSize
)

func (MetricType) String added in v0.2.0

func (t MetricType) String() string

String returns a string representation for MetricType.

Jump to

Keyboard shortcuts

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