Documentation
¶
Index ¶
- Constants
- func AuthenticatedClient(opts *clientconfig.ClientOpts, transport *http.Transport) (*gophercloud.ProviderClient, error)
- func GetEndpointType(endpointType string) gophercloud.Availability
- func ListAZs(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAgentStates(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllAmphorae(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllLoadbalancers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllServers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListCinderAgentState(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListCinderPoolCapacityFree(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListComputeLimits(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListComputeSecGroups(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListContainers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListDomains(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListFlavors(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListFloatingIps(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListFloatingIpsAssociatedNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListGroups(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListHypervisors(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListImages(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListLBs(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListLBsNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListNetworkIPAvailabilities(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListNetworks(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListNovaAgentState(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListPorts(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListPortsLBsNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListPortsNoIPs(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListProjects(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListRegions(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListRouters(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListRoutersNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListSecGroups(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListSnapshots(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListSubnets(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListUsers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListVolumes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func NewServiceClient(service string, opts *clientconfig.ClientOpts, transport *http.Transport, ...) (*gophercloud.ServiceClient, error)
- type BaseOpenStackExporter
- func (exporter *BaseOpenStackExporter) AddMetric(name string, fn ListFunc, labels []string, constLabels prometheus.Labels)
- func (exporter *BaseOpenStackExporter) Collect(ch chan<- prometheus.Metric)
- func (exporter *BaseOpenStackExporter) Describe(ch chan<- *prometheus.Desc)
- func (exporter *BaseOpenStackExporter) GetName() string
- func (exporter *BaseOpenStackExporter) MetricIsDisabled(name string) bool
- type CinderExporter
- type GlanceExporter
- type KeystoneExporter
- type ListFunc
- type LoadbalancerExporter
- type Metric
- type NeutronExporter
- type NovaExporter
- type ObjectStoreExporter
- type OpenStackExporter
- type PrometheusMetric
Constants ¶
const ( //nolint: deadcode, unused BYTE = 1 << (10 * iota) //nolint: deadcode, unused KILOBYTE MEGABYTE GIGABYTE //nolint: deadcode, unused TERABYTE )
Variables ¶
This section is empty.
Functions ¶
func AuthenticatedClient ¶ added in v0.6.0
func AuthenticatedClient(opts *clientconfig.ClientOpts, transport *http.Transport) (*gophercloud.ProviderClient, error)
func GetEndpointType ¶ added in v0.8.0
func GetEndpointType(endpointType string) gophercloud.Availability
func ListAZs ¶
func ListAZs(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAgentStates ¶
func ListAgentStates(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListAgentStates : list agent state per node
func ListAllAmphorae ¶ added in v1.0.0
func ListAllAmphorae(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllLoadbalancers ¶ added in v1.0.0
func ListAllLoadbalancers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllServers ¶
func ListAllServers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListCinderAgentState ¶
func ListCinderAgentState(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListCinderPoolCapacityFree ¶ added in v1.0.0
func ListCinderPoolCapacityFree(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListComputeLimits ¶ added in v0.9.0
func ListComputeLimits(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListComputeSecGroups ¶
func ListComputeSecGroups(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListContainers ¶ added in v0.9.0
func ListContainers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListDomains ¶
func ListDomains(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListFlavors ¶
func ListFlavors(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListFloatingIps ¶
func ListFloatingIps(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListFloatingIps : count total number of instantiated FloatingIPs
func ListFloatingIpsAssociatedNotActive ¶ added in v1.0.0
func ListFloatingIpsAssociatedNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListFloatingIpsAssociatedNotActive : count total number of instantiated FloatingIPs that are associated to private IP but not in ACTIVE state
func ListGroups ¶
func ListGroups(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListHypervisors ¶
func ListHypervisors(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListImages ¶
func ListImages(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListLBs ¶ added in v1.0.0
func ListLBs(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListLBs : count total number of instantiated LoadBalancers
func ListLBsNotActive ¶ added in v1.0.0
func ListLBsNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListLBsNotActive : count total number of instantiated LoadBalancers that are not in ACTIVE state
func ListNetworkIPAvailabilities ¶ added in v0.7.0
func ListNetworkIPAvailabilities(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListNetworkIPAvailabilities : count total number of used IPs per Network
func ListNetworks ¶
func ListNetworks(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListNetworks : Count total number of instantiated Networks
func ListNovaAgentState ¶
func ListNovaAgentState(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListPorts ¶
func ListPorts(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListPorts : count total number of instantiated Ports
func ListPortsLBsNotActive ¶ added in v1.0.0
func ListPortsLBsNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListPortsLBsNotActive : count total number of LB Ports that are not in ACTIVE state
func ListPortsNoIPs ¶ added in v1.0.0
func ListPortsNoIPs(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListPortsNoIPs : count total number of ACTIVE Ports with no IP
func ListProjects ¶
func ListProjects(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListRegions ¶
func ListRegions(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListRouters ¶ added in v0.7.0
func ListRouters(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListRouters : count total number of instantiated Routers
func ListRoutersNotActive ¶ added in v1.0.0
func ListRoutersNotActive(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListRoutersNotActive : count total number of instantiated Routers that are not in ACTIVE state
func ListSecGroups ¶
func ListSecGroups(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListSecGroups : count total number of instantiated Security Groups
func ListSnapshots ¶
func ListSnapshots(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListSubnets ¶
func ListSubnets(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListSubnets : count total number of instantiated Subnets
func ListUsers ¶
func ListUsers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListVolumes ¶
func ListVolumes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func NewServiceClient ¶ added in v0.6.0
func NewServiceClient(service string, opts *clientconfig.ClientOpts, transport *http.Transport, endpointType string) (*gophercloud.ServiceClient, error)
NewServiceClient is a convenience function to get a new service client.
Types ¶
type BaseOpenStackExporter ¶
type BaseOpenStackExporter struct {
Name string
Prefix string
Metrics map[string]*PrometheusMetric
Client *gophercloud.ServiceClient
DisabledMetrics []string
}
func (*BaseOpenStackExporter) AddMetric ¶
func (exporter *BaseOpenStackExporter) AddMetric(name string, fn ListFunc, labels []string, constLabels prometheus.Labels)
func (*BaseOpenStackExporter) Collect ¶ added in v0.9.0
func (exporter *BaseOpenStackExporter) Collect(ch chan<- prometheus.Metric)
func (*BaseOpenStackExporter) Describe ¶ added in v0.9.0
func (exporter *BaseOpenStackExporter) Describe(ch chan<- *prometheus.Desc)
func (*BaseOpenStackExporter) GetName ¶
func (exporter *BaseOpenStackExporter) GetName() string
func (*BaseOpenStackExporter) MetricIsDisabled ¶ added in v0.8.0
func (exporter *BaseOpenStackExporter) MetricIsDisabled(name string) bool
type CinderExporter ¶
type CinderExporter struct {
BaseOpenStackExporter
}
func NewCinderExporter ¶
func NewCinderExporter(client *gophercloud.ServiceClient, prefix string, disabledMetrics []string) (*CinderExporter, error)
type GlanceExporter ¶
type GlanceExporter struct {
BaseOpenStackExporter
}
func NewGlanceExporter ¶
func NewGlanceExporter(client *gophercloud.ServiceClient, prefix string, disabledMetrics []string) (*GlanceExporter, error)
type KeystoneExporter ¶
type KeystoneExporter struct {
BaseOpenStackExporter
}
func NewKeystoneExporter ¶
func NewKeystoneExporter(client *gophercloud.ServiceClient, prefix string, disabledMetrics []string) (*KeystoneExporter, error)
type ListFunc ¶
type ListFunc func(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
type LoadbalancerExporter ¶ added in v1.0.0
type LoadbalancerExporter struct {
BaseOpenStackExporter
}
func NewLoadbalancerExporter ¶ added in v1.0.0
func NewLoadbalancerExporter(client *gophercloud.ServiceClient, prefix string, disabledMetrics []string) (*LoadbalancerExporter, error)
type NeutronExporter ¶
type NeutronExporter struct {
BaseOpenStackExporter
}
NeutronExporter : extends BaseOpenStackExporter
func NewNeutronExporter ¶
func NewNeutronExporter(client *gophercloud.ServiceClient, prefix string, disabledMetrics []string) (*NeutronExporter, error)
NewNeutronExporter : returns a pointer to NeutronExporter
type NovaExporter ¶
type NovaExporter struct {
BaseOpenStackExporter
}
func NewNovaExporter ¶
func NewNovaExporter(client *gophercloud.ServiceClient, prefix string, disabledMetrics []string) (*NovaExporter, error)
type ObjectStoreExporter ¶ added in v0.9.0
type ObjectStoreExporter struct {
BaseOpenStackExporter
}
func NewObjectStoreExporter ¶ added in v0.9.0
func NewObjectStoreExporter(client *gophercloud.ServiceClient, prefix string, disabledMetrics []string) (*ObjectStoreExporter, error)
type OpenStackExporter ¶
type OpenStackExporter interface {
prometheus.Collector
GetName() string
AddMetric(name string, fn ListFunc, labels []string, constLabels prometheus.Labels)
MetricIsDisabled(name string) bool
}
func EnableExporter ¶
func EnableExporter(service, prefix, cloud string, disabledMetrics []string, endpointType string) (*OpenStackExporter, error)
func NewExporter ¶
func NewExporter(name, prefix, cloud string, disabledMetrics []string, endpointType string) (OpenStackExporter, error)
type PrometheusMetric ¶
type PrometheusMetric struct {
Metric *prometheus.Desc
Fn ListFunc
}