Documentation ¶
Index ¶
- Constants
- type Collector
- type CollectorType
- type Config
- type Metric
- type NamedCollector
- type Plugin
- func (p *Plugin) AddStatProvider(stat StatProvider) error
- func (p *Plugin) Available()
- func (p *Plugin) Collects() []interface{}
- func (p *Plugin) Init(cfg config.Configurer, log logger.Logger) error
- func (p *Plugin) Name() string
- func (p *Plugin) RPC() interface{}
- func (p *Plugin) Register(c prometheus.Collector) error
- func (p *Plugin) Serve() chan error
- func (p *Plugin) Stop() error
- type StatProvider
Constants ¶
View Source
const (
// PluginName declares plugin name.
PluginName = "metrics"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Collector ¶
type Collector struct { // Namespace of the metric. Namespace string `json:"namespace"` // Subsystem of the metric. Subsystem string `json:"subsystem"` // Collector type (histogram, gauge, counter, summary). Type CollectorType `json:"type"` // Help of collector. Help string `json:"help"` // Labels for vectorized metrics. Labels []string `json:"labels"` // Buckets for histogram metric. Buckets []float64 `json:"buckets"` // Objectives for the summary opts Objectives map[float64]float64 `json:"objectives"` }
Collector describes single application specific metric.
type CollectorType ¶
type CollectorType string
CollectorType represents prometheus collector types
const ( // Histogram type Histogram CollectorType = "histogram" // Gauge type Gauge CollectorType = "gauge" // Counter type Counter CollectorType = "counter" // Summary type Summary CollectorType = "summary" )
type Config ¶
type Config struct { // Address to listen Address string // Collect define application specific metrics. Collect map[string]Collector }
Config configures metrics service.
func (*Config) InitDefaults ¶
func (c *Config) InitDefaults()
type Metric ¶
type Metric struct { // Collector name. Name string // Collector value. Value float64 // Labels associated with metric. Only for vector metrics. Must be provided in a form of label values. Labels []string }
Metric represent single metric produced by the application.
type NamedCollector ¶
type Plugin ¶
type Plugin struct {
// contains filtered or unexported fields
}
Plugin to manage application metrics using Prometheus.
func (*Plugin) AddStatProvider ¶
func (p *Plugin) AddStatProvider(stat StatProvider) error
AddStatProvider adds a metrics provider
func (*Plugin) Available ¶ added in v2.2.0
func (p *Plugin) Available()
Available interface implementation
func (*Plugin) Collects ¶
func (p *Plugin) Collects() []interface{}
Collects used to collect all plugins which implement metrics.StatProvider interface (and Named)
type StatProvider ¶
type StatProvider interface {
MetricsCollector() []prometheus.Collector
}
Click to show internal directories.
Click to hide internal directories.