pinqueue

package
v1.0.6 Latest Latest
Warning

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

Go to latest
Published: Mar 6, 2023 License: Apache-2.0, MIT, Apache-2.0, + 1 more Imports: 11 Imported by: 2

Documentation

Overview

Package pinqueue implements an ipfs-cluster informer which issues the current size of the pinning queue.

Index

Constants

View Source
const (
	DefaultMetricTTL        = 30 * time.Second
	DefaultWeightBucketSize = 100000 // 100k pins
)

These are the default values for a Config.

Variables

View Source
var MetricName = "pinqueue"

MetricName specifies the name of our metric

Functions

This section is empty.

Types

type Config

type Config struct {
	config.Saver

	MetricTTL        time.Duration
	WeightBucketSize int
}

Config allows to initialize an Informer.

func (*Config) ApplyEnvVars

func (cfg *Config) ApplyEnvVars() error

ApplyEnvVars fills in any Config fields found as environment variables.

func (*Config) ConfigKey

func (cfg *Config) ConfigKey() string

ConfigKey returns a human-friendly identifier for this Config's type.

func (*Config) Default

func (cfg *Config) Default() error

Default initializes this Config with sensible values.

func (*Config) LoadJSON

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

LoadJSON parses a raw JSON byte-slice as generated by ToJSON().

func (*Config) ToDisplayJSON

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

ToDisplayJSON returns JSON config as a string.

func (*Config) ToJSON

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

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

func (*Config) Validate

func (cfg *Config) Validate() error

Validate checks that the fields of this configuration have sensible values.

type Informer

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

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

func New

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

New returns an initialized Informer.

func (*Informer) GetMetrics

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

GetMetrics contacts the Pintracker component and requests the number of queued items for pinning.

func (*Informer) Name

func (inf *Informer) Name() string

Name returns the name of this informer

func (*Informer) SetClient

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

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

func (*Informer) Shutdown

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

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

Jump to

Keyboard shortcuts

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