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 ListAllClusters(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllInstances(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllLoadbalancers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllMetrics(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllPools(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllServers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListAllStacks(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 ListGroups(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListHypervisors(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListImageBytes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListImages(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 ListNodes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListNovaAgentState(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListPlacementResourceProviders(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListPorts(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 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 ListSubnetsPerPool(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListUsage(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListUsers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListVolumeLimits(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListVolumes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListVolumesStatus(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func ListZonesAndRecordsets(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
- func NewServiceClient(service string, opts *clientconfig.ClientOpts, transport *http.Transport, ...) (*gophercloud.ServiceClient, error)
- func RemoveElements(slice []string, drop []string) []string
- type BaseOpenStackExporter
- func (exporter *BaseOpenStackExporter) AddMetric(name string, fn ListFunc, labels []string, deprecatedVersion string, ...)
- 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
- func (exporter *BaseOpenStackExporter) RunCollection(metric *PrometheusMetric, metricName string, ch chan<- prometheus.Metric, ...) error
- type CinderExporter
- type ContainerInfraExporter
- type DesignateExporter
- type ExporterConfig
- type GlanceExporter
- type GnocchiExporter
- type HeatExporter
- type IronicExporter
- type KeystoneExporter
- type ListFunc
- type LoadbalancerExporter
- type Metric
- type NeutronExporter
- type NovaExporter
- type ObjectStoreExporter
- type OpenStackExporter
- type PlacementExporter
- type PortBinding
- type PrometheusMetric
- type TroveExporter
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
GetEndpointType return openstack endpoints for configured type
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 ListAllClusters ¶ added in v1.1.0
func ListAllClusters(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllInstances ¶ added in v1.4.0
func ListAllInstances(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllLoadbalancers ¶ added in v1.0.0
func ListAllLoadbalancers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllMetrics ¶ added in v1.2.0
func ListAllMetrics(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllPools ¶ added in v1.7.0
func ListAllPools(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllServers ¶
func ListAllServers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListAllStacks ¶ added in v1.4.0
func ListAllStacks(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 and those 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 ListImageBytes ¶ added in v1.7.0
func ListImageBytes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListImages ¶
func ListImages(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
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 and list each Network info
func ListNodes ¶ added in v1.2.0
func ListNodes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListNodes : list nodes
func ListNovaAgentState ¶
func ListNovaAgentState(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListPlacementResourceProviders ¶ added in v1.5.0
func ListPlacementResourceProviders(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListPorts ¶
func ListPorts(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListPorts generates metrics about ports inside the OpenStack cloud
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 and those 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 and list each Subnet info
func ListSubnetsPerPool ¶ added in v1.5.0
func ListSubnetsPerPool(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListSubnetsPerPool : Count used/free/total number of subnets per subnet pool
func ListUsage ¶ added in v1.4.0
func ListUsage(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
ListUsage add metrics about usage
func ListUsers ¶
func ListUsers(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListVolumeLimits ¶ added in v1.1.0
func ListVolumeLimits(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListVolumes ¶
func ListVolumes(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListVolumesStatus ¶ added in v1.4.0
func ListVolumesStatus(exporter *BaseOpenStackExporter, ch chan<- prometheus.Metric) error
func ListZonesAndRecordsets ¶ added in v1.1.0
func ListZonesAndRecordsets(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.
func RemoveElements ¶ added in v1.3.0
RemoveElements remove not needed elements
Types ¶
type BaseOpenStackExporter ¶
type BaseOpenStackExporter struct { ExporterConfig Name string Metrics map[string]*PrometheusMetric // contains filtered or unexported fields }
func (*BaseOpenStackExporter) AddMetric ¶
func (exporter *BaseOpenStackExporter) AddMetric(name string, fn ListFunc, labels []string, deprecatedVersion 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
func (*BaseOpenStackExporter) RunCollection ¶ added in v1.1.0
func (exporter *BaseOpenStackExporter) RunCollection(metric *PrometheusMetric, metricName string, ch chan<- prometheus.Metric, logger log.Logger) error
type CinderExporter ¶
type CinderExporter struct {
BaseOpenStackExporter
}
func NewCinderExporter ¶
func NewCinderExporter(config *ExporterConfig, logger log.Logger) (*CinderExporter, error)
type ContainerInfraExporter ¶ added in v1.1.0
type ContainerInfraExporter struct {
BaseOpenStackExporter
}
func NewContainerInfraExporter ¶ added in v1.1.0
func NewContainerInfraExporter(config *ExporterConfig, logger log.Logger) (*ContainerInfraExporter, error)
type DesignateExporter ¶ added in v1.1.0
type DesignateExporter struct {
BaseOpenStackExporter
}
func NewDesignateExporter ¶ added in v1.1.0
func NewDesignateExporter(config *ExporterConfig, logger log.Logger) (*DesignateExporter, error)
type ExporterConfig ¶ added in v1.1.0
type GlanceExporter ¶
type GlanceExporter struct {
BaseOpenStackExporter
}
func NewGlanceExporter ¶
func NewGlanceExporter(config *ExporterConfig, logger log.Logger) (*GlanceExporter, error)
type GnocchiExporter ¶ added in v1.2.0
type GnocchiExporter struct {
BaseOpenStackExporter
}
func NewGnocchiExporter ¶ added in v1.2.0
func NewGnocchiExporter(config *ExporterConfig, logger log.Logger) (*GnocchiExporter, error)
type HeatExporter ¶ added in v1.4.0
type HeatExporter struct {
BaseOpenStackExporter
}
func NewHeatExporter ¶ added in v1.4.0
func NewHeatExporter(config *ExporterConfig, logger log.Logger) (*HeatExporter, error)
type IronicExporter ¶ added in v1.2.0
type IronicExporter struct {
BaseOpenStackExporter
}
IronicExporter : extends BaseOpenStackExporter
func NewIronicExporter ¶ added in v1.2.0
func NewIronicExporter(config *ExporterConfig, logger log.Logger) (*IronicExporter, error)
NewIronicExporter : returns a pointer to IronicExporter
type KeystoneExporter ¶
type KeystoneExporter struct {
BaseOpenStackExporter
}
func NewKeystoneExporter ¶
func NewKeystoneExporter(config *ExporterConfig, logger log.Logger) (*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(config *ExporterConfig, logger log.Logger) (*LoadbalancerExporter, error)
type NeutronExporter ¶
type NeutronExporter struct {
BaseOpenStackExporter
}
NeutronExporter : extends BaseOpenStackExporter
func NewNeutronExporter ¶
func NewNeutronExporter(config *ExporterConfig, logger log.Logger) (*NeutronExporter, error)
NewNeutronExporter : returns a pointer to NeutronExporter
type NovaExporter ¶
type NovaExporter struct {
BaseOpenStackExporter
}
func NewNovaExporter ¶
func NewNovaExporter(config *ExporterConfig, logger log.Logger) (*NovaExporter, error)
type ObjectStoreExporter ¶ added in v0.9.0
type ObjectStoreExporter struct {
BaseOpenStackExporter
}
func NewObjectStoreExporter ¶ added in v0.9.0
func NewObjectStoreExporter(config *ExporterConfig, logger log.Logger) (*ObjectStoreExporter, error)
type OpenStackExporter ¶
type OpenStackExporter interface { prometheus.Collector GetName() string AddMetric(name string, fn ListFunc, labels []string, deprecatedVersion string, constLabels prometheus.Labels) MetricIsDisabled(name string) bool }
func EnableExporter ¶
func EnableExporter(service, prefix, cloud string, disabledMetrics []string, endpointType string, collectTime bool, disableSlowMetrics bool, disableDeprecatedMetrics bool, disableCinderAgentUUID bool, domainID string, uuidGenFunc func() (string, error), logger log.Logger) (*OpenStackExporter, error)
func NewExporter ¶
type PlacementExporter ¶ added in v1.5.0
type PlacementExporter struct {
BaseOpenStackExporter
}
func NewPlacementExporter ¶ added in v1.5.0
func NewPlacementExporter(config *ExporterConfig, logger log.Logger) (*PlacementExporter, error)
type PortBinding ¶ added in v1.1.0
type PortBinding struct { ports.Port portsbinding.PortsBindingExt }
PortBinding represents a port which includes port bindings
type PrometheusMetric ¶
type PrometheusMetric struct { Metric *prometheus.Desc Fn ListFunc }
type TroveExporter ¶ added in v1.4.0
type TroveExporter struct {
BaseOpenStackExporter
}
func NewTroveExporter ¶ added in v1.4.0
func NewTroveExporter(config *ExporterConfig, logger log.Logger) (*TroveExporter, error)