Documentation
¶
Overview ¶
Package promunifi provides the bridge between unpoller metrics and prometheus.
Index ¶
Constants ¶
View Source
const PluginName = "prometheus"
PluginName is the name of this plugin.
Variables ¶
View Source
var ErrMetricFetchFailed = fmt.Errorf("metric fetch failed")
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { // If non-empty, each of the collected metrics is prefixed by the // provided string and an underscore ("_"). Namespace string `json:"namespace" toml:"namespace" xml:"namespace" yaml:"namespace"` HTTPListen string `json:"http_listen" toml:"http_listen" xml:"http_listen" yaml:"http_listen"` // If these are provided, the app will attempt to listen with an SSL connection. SSLCrtPath string `json:"ssl_cert_path" toml:"ssl_cert_path" xml:"ssl_cert_path" yaml:"ssl_cert_path"` SSLKeyPath string `json:"ssl_key_path" toml:"ssl_key_path" xml:"ssl_key_path" yaml:"ssl_key_path"` // Buffer is a channel buffer. // Default is probably 50. Seems fast there; try 1 to see if CPU usage goes down? Buffer int `json:"buffer" toml:"buffer" xml:"buffer" yaml:"buffer"` // If true, any error encountered during collection is reported as an // invalid metric (see NewInvalidMetric). Otherwise, errors are ignored // and the collected metrics will be incomplete. Possibly, no metrics // will be collected at all. ReportErrors bool `json:"report_errors" toml:"report_errors" xml:"report_errors" yaml:"report_errors"` Disable bool `json:"disable" toml:"disable" xml:"disable" yaml:"disable"` // Save data for dead ports? ie. ports that are down or disabled. DeadPorts bool `json:"dead_ports" toml:"dead_ports" xml:"dead_ports" yaml:"dead_ports"` }
Config is the input (config file) data used to initialize this output plugin.
type Report ¶
type Report struct { *Config Total int // Total count of metrics recorded. Errors int // Total count of errors recording metrics. Zeros int // Total count of metrics equal to zero. USG int // Total count of USG devices. USW int // Total count of USW devices. UAP int // Total count of UAP devices. UDM int // Total count of UDM devices. UXG int // Total count of UXG devices. Metrics *poller.Metrics // Metrics collected and recorded. Elapsed time.Duration // Duration elapsed collecting and exporting. Fetch time.Duration // Duration elapsed making controller requests. Start time.Time // Time collection began. // contains filtered or unexported fields }
Report accumulates counters that are printed to a log line.
Click to show internal directories.
Click to hide internal directories.