Documentation
¶
Index ¶
- Constants
- func AzureUsageToMetricLabels(target QueryTarget, usage AzureUsage) []string
- func AzureUsageToPromDescs(target QueryTarget, usage AzureUsage) (*prometheus.Desc, *prometheus.Desc)
- type AzureUsage
- type AzureUsageList
- type AzureUsageLister
- type AzureUsageName
- type AzureUsageUnit
- type QueryTarget
- type ResourceProvider
Constants ¶
View Source
const ( // PrometheusSubsystemUsage - sub system of the metrics. PrometheusSubsystemUsage = "usage" // PrometheusLabelUsageName - usage name label PrometheusLabelUsageName = "usage_name" // PrometheusLabelSubscriptionID - subscription id label PrometheusLabelSubscriptionID = "subscription_id" // PrometheusLabelLocation - location label PrometheusLabelLocation = "location" // PrometheusMetricLimit - usage limit metric PrometheusMetricLimit = "limit" // PrometheusMetricCurrentValue - usage limit value PrometheusMetricCurrentValue = "current_value" )
Variables ¶
This section is empty.
Functions ¶
func AzureUsageToMetricLabels ¶
func AzureUsageToMetricLabels( target QueryTarget, usage AzureUsage, ) []string
AzureUsageToMetricLabels converts usage to prometheus metric labels.
func AzureUsageToPromDescs ¶
func AzureUsageToPromDescs( target QueryTarget, usage AzureUsage, ) (*prometheus.Desc, *prometheus.Desc)
AzureUsageToPromDescs converts usage to prometheus descriptors.
Types ¶
type AzureUsage ¶
type AzureUsage struct { ID string `json:"id"` CurrentValue int `json:"currentValue"` Limit int `json:"limit"` Name AzureUsageName `json:"name"` Unit AzureUsageUnit `json:"unit"` }
AzureUsage - Azure usage data. ref: https://docs.microsoft.com/en-us/rest/api/virtualnetwork/usages/list#usage
type AzureUsageList ¶
type AzureUsageList struct {
Value []AzureUsage `json:"value"`
}
AzureUsageList - Azure usage data list.
type AzureUsageLister ¶
type AzureUsageLister interface { // ListByResourceProvider lists usage by resource provider. ListByResourceProvider( ctx context.Context, target QueryTarget, ) (AzureUsageList, error) }
AzureUsageLister lists Azure usage metrics.
type AzureUsageName ¶
type AzureUsageName struct { Value string `json:"value"` LocalizedValue string `json:"localizedValue"` }
AzureUsageName - name of the usage.
type QueryTarget ¶
type QueryTarget struct { ResourceProvider ResourceProvider SubscriptionID string Location string }
QueryTarget defines the usage query target.
type ResourceProvider ¶
type ResourceProvider string
ResourceProvider - Azure resource provider enum.
const ( // ResourceProviderNetwork - network RP // https://docs.microsoft.com/en-us/rest/api/virtualnetwork/usages/list ResourceProviderNetwork ResourceProvider = "Microsoft.Network" // ResourceProviderCompute - compute RP // https://docs.microsoft.com/en-us/rest/api/compute/usage/list ResourceProviderCompute ResourceProvider = "Microsoft.Compute" )
func ParseResourceProvider ¶
func ParseResourceProvider(s string) (ResourceProvider, error)
ParseResourceProvider parses supported resource provider.
func (ResourceProvider) APIVersion ¶
func (rp ResourceProvider) APIVersion() string
APIVersion returns the API version to use for a resource provider.
func (ResourceProvider) ToPromNamespace ¶
func (rp ResourceProvider) ToPromNamespace() string
ToPromNamespace converts resource provider to prometheus namespace.
Click to show internal directories.
Click to hide internal directories.