azure

package
v0.0.0-...-0a9e2ec Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 31, 2022 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	QueryGroupingResourceGroup          = "ResourceGroup"
	QueryGroupingResourceGroupName      = "ResourceGroupName"
	QueryGroupingResourceLocation       = "ResourceLocation"
	QueryGroupingConsumedService        = "ConsumedService"
	QueryGroupingResourceType           = "ResourceType"
	QueryGroupingResourceId             = "ResourceId"
	QueryGroupingMeterId                = "MeterId"
	QueryGroupingBillingMonth           = "BillingMonth"
	QueryGroupingMeterCategory          = "MeterCategory"
	QueryGroupingMeterSubcategory       = "MeterSubcategory"
	QueryGroupingMeter                  = "Meter"
	QueryGroupingAccountName            = "AccountName"
	QueryGroupingDepartmentName         = "DepartmentName"
	QueryGroupingSubscriptionId         = "SubscriptionId"
	QueryGroupingSubscriptionName       = "SubscriptionName"
	QueryGroupingServiceName            = "ServiceName"
	QueryGroupingServiceTier            = "ServiceTier"
	QueryGroupingEnrollmentAccountName  = "EnrollmentAccountName"
	QueryGroupingBillingAccountId       = "BillingAccountId"
	QueryGroupingResourceGuid           = "ResourceGuid"
	QueryGroupingBillingPeriod          = "BillingPeriod"
	QueryGroupingInvoiceNumber          = "InvoiceNumber"
	QueryGroupingChargeType             = "ChargeType"
	QueryGroupingPublisherType          = "PublisherType"
	QueryGroupingReservationId          = "ReservationId"
	QueryGroupingReservationName        = "ReservationName"
	QueryGroupingFrequency              = "Frequency"
	QueryGroupingPartNumber             = "PartNumber"
	QueryGroupingCostAllocationRuleName = "CostAllocationRuleName"
	QueryGroupingMarkupRuleName         = "MarkupRuleName"
	QueryGroupingPricingModel           = "PricingModel"
	QueryGroupingBenefitId              = "BenefitId"
	QueryGroupingBenefitName            = "BenefitName"
)

Variables

This section is empty.

Functions

func NewQueryAggregation

func NewQueryAggregation(fn, name string) armcostmanagement.QueryAggregation

NewQueryAggregation returns an aggregation to collect data in Azure

func NewQueryDefinition

func NewQueryDefinition(exportType, timeframeType, granularity string,
	aggregation map[string]*armcostmanagement.QueryAggregation,
	grouping []*armcostmanagement.QueryGrouping,
	begin, stop time.Time) armcostmanagement.QueryDefinition

NewQueryDefinition returns a definition for query in Azure

func NewQueryGrouping

func NewQueryGrouping(name, queryColumnType string) armcostmanagement.QueryGrouping

NewQueryGrouping returns a grouping for data in Azure

func NewResourceIdTypeGroupGrouping

func NewResourceIdTypeGroupGrouping(queryColumnType string) []*armcostmanagement.QueryGrouping

NewResourceIdTypeGroupGrouping returns a new QueryGrouping querying ResourceId, ResourceType, and ResourceGroup

func NewResourceTypeGroupGrouping

func NewResourceTypeGroupGrouping(queryColumnType string) []*armcostmanagement.QueryGrouping

NewResourceTypeGroupGrouping returns a new QueryGrouping querying ResourceType and ResourceGroup

Types

type CostResults

type CostResults struct {
	Resources []RawCostResult
}

func Run

func Run(start, end, subscriptionid string, grouping []*armcostmanagement.QueryGrouping) CostResults

Run returns cost results for a given time range

func (*CostResults) ParseIdResults

func (results *CostResults) ParseIdResults() ParsedCostResults

ParseIdResults parses the results of resourceId query and begins grouping

type CostResultsNoId

type CostResultsNoId struct {
	Resources []RawCostResultNoId
}

func Run2

func Run2(start, end, subscriptionid string, grouping []*armcostmanagement.QueryGrouping) CostResultsNoId

Run2 returns cost results for a given time range

func (*CostResultsNoId) ParseNoIdResults

func (results *CostResultsNoId) ParseNoIdResults() ParsedCostResultsNoId

ParseNoIdResults parses the results of resourceId query and begins grouping

type GroupBy

type GroupBy struct {
	Gb map[string]map[string]float64
}

func (*GroupBy) PrettyPrint

func (gb *GroupBy) PrettyPrint()

type ParsedCostResult

type ParsedCostResult struct {
	Cost                float64
	Date                string
	ParsedResourceId    string
	ParsedResourceType  string
	ParsedResourceGroup string
}

type ParsedCostResultNoId

type ParsedCostResultNoId struct {
	Cost                float64
	Date                string
	ParsedResourceType  string
	ParsedResourceGroup string
}

type ParsedCostResults

type ParsedCostResults struct {
	Results []ParsedCostResult
}

type ParsedCostResultsNoId

type ParsedCostResultsNoId struct {
	Results []ParsedCostResultNoId
}

func (*ParsedCostResultsNoId) GroupByRg

func (results *ParsedCostResultsNoId) GroupByRg() GroupBy

type RawCostResult

type RawCostResult struct {
	Cost          float64
	Date          string
	ResourceId    string
	ResourceType  string
	ResourceGroup string
	Currency      string
}

type RawCostResultNoId

type RawCostResultNoId struct {
	Cost          float64
	Date          string
	ResourceType  string
	ResourceGroup string
	Currency      string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL