query

package
v0.20230823.1052657 Latest Latest
Warning

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

Go to latest
Published: Aug 23, 2023 License: MPL-2.0 Imports: 13 Imported by: 1

README

github.com/hashicorp/go-azure-sdk/resource-manager/costmanagement/2022-10-01/query Documentation

The query SDK allows for interaction with the Azure Resource Manager Service costmanagement (API Version 2022-10-01).

This readme covers example usages, but further information on using this SDK can be found in the project root.

Import Path

import "github.com/hashicorp/go-azure-sdk/resource-manager/costmanagement/2022-10-01/query"

Client Initialization

client := query.NewQueryClientWithBaseURI("https://management.azure.com")
client.Client.Authorizer = authorizer

Example Usage: QueryClient.Usage

ctx := context.TODO()
id := query.NewScopeID("/subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/some-resource-group")

payload := query.QueryDefinition{
	// ...
}


read, err := client.Usage(ctx, id, payload)
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Example Usage: QueryClient.UsageByExternalCloudProviderType

ctx := context.TODO()
id := query.NewExternalCloudProviderTypeID("externalBillingAccounts", "externalCloudProviderIdValue")

payload := query.QueryDefinition{
	// ...
}


read, err := client.UsageByExternalCloudProviderType(ctx, id, payload)
if err != nil {
	// handle the error
}
if model := read.Model; model != nil {
	// do something with the model/response object
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PossibleValuesForExportType

func PossibleValuesForExportType() []string

func PossibleValuesForExternalCloudProviderType

func PossibleValuesForExternalCloudProviderType() []string

func PossibleValuesForFunctionType

func PossibleValuesForFunctionType() []string

func PossibleValuesForGranularityType

func PossibleValuesForGranularityType() []string

func PossibleValuesForQueryColumnType

func PossibleValuesForQueryColumnType() []string

func PossibleValuesForQueryOperatorType

func PossibleValuesForQueryOperatorType() []string

func PossibleValuesForTimeframeType

func PossibleValuesForTimeframeType() []string

func ValidateExternalCloudProviderTypeID

func ValidateExternalCloudProviderTypeID(input interface{}, key string) (warnings []string, errors []error)

ValidateExternalCloudProviderTypeID checks that 'input' can be parsed as a External Cloud Provider Type ID

Types

type ExportType

type ExportType string
const (
	ExportTypeActualCost    ExportType = "ActualCost"
	ExportTypeAmortizedCost ExportType = "AmortizedCost"
	ExportTypeUsage         ExportType = "Usage"
)

func (*ExportType) UnmarshalJSON added in v0.20230411.1183115

func (s *ExportType) UnmarshalJSON(bytes []byte) error

type ExternalCloudProviderType

type ExternalCloudProviderType string
const (
	ExternalCloudProviderTypeExternalBillingAccounts ExternalCloudProviderType = "externalBillingAccounts"
	ExternalCloudProviderTypeExternalSubscriptions   ExternalCloudProviderType = "externalSubscriptions"
)

func (*ExternalCloudProviderType) UnmarshalJSON added in v0.20230411.1183115

func (s *ExternalCloudProviderType) UnmarshalJSON(bytes []byte) error

type ExternalCloudProviderTypeId

type ExternalCloudProviderTypeId struct {
	ExternalCloudProviderType ExternalCloudProviderType
	ExternalCloudProviderId   string
}

ExternalCloudProviderTypeId is a struct representing the Resource ID for a External Cloud Provider Type

func NewExternalCloudProviderTypeID

func NewExternalCloudProviderTypeID(externalCloudProviderType ExternalCloudProviderType, externalCloudProviderId string) ExternalCloudProviderTypeId

NewExternalCloudProviderTypeID returns a new ExternalCloudProviderTypeId struct

func ParseExternalCloudProviderTypeID

func ParseExternalCloudProviderTypeID(input string) (*ExternalCloudProviderTypeId, error)

ParseExternalCloudProviderTypeID parses 'input' into a ExternalCloudProviderTypeId

func ParseExternalCloudProviderTypeIDInsensitively

func ParseExternalCloudProviderTypeIDInsensitively(input string) (*ExternalCloudProviderTypeId, error)

ParseExternalCloudProviderTypeIDInsensitively parses 'input' case-insensitively into a ExternalCloudProviderTypeId note: this method should only be used for API response data and not user input

func (ExternalCloudProviderTypeId) ID

ID returns the formatted External Cloud Provider Type ID

func (ExternalCloudProviderTypeId) Segments

Segments returns a slice of Resource ID Segments which comprise this External Cloud Provider Type ID

func (ExternalCloudProviderTypeId) String

func (id ExternalCloudProviderTypeId) String() string

String returns a human-readable description of this External Cloud Provider Type ID

type FunctionType

type FunctionType string
const (
	FunctionTypeSum FunctionType = "Sum"
)

func (*FunctionType) UnmarshalJSON added in v0.20230411.1183115

func (s *FunctionType) UnmarshalJSON(bytes []byte) error

type GranularityType

type GranularityType string
const (
	GranularityTypeDaily GranularityType = "Daily"
)

func (*GranularityType) UnmarshalJSON added in v0.20230411.1183115

func (s *GranularityType) UnmarshalJSON(bytes []byte) error

type QueryAggregation

type QueryAggregation struct {
	Function FunctionType `json:"function"`
	Name     string       `json:"name"`
}

type QueryClient

type QueryClient struct {
	Client *resourcemanager.Client
}

func NewQueryClientWithBaseURI

func NewQueryClientWithBaseURI(sdkApi sdkEnv.Api) (*QueryClient, error)

func (QueryClient) Usage

Usage ...

func (QueryClient) UsageByExternalCloudProviderType

UsageByExternalCloudProviderType ...

type QueryColumn

type QueryColumn struct {
	Name *string `json:"name,omitempty"`
	Type *string `json:"type,omitempty"`
}

type QueryColumnType

type QueryColumnType string
const (
	QueryColumnTypeDimension QueryColumnType = "Dimension"
	QueryColumnTypeTagKey    QueryColumnType = "TagKey"
)

func (*QueryColumnType) UnmarshalJSON added in v0.20230411.1183115

func (s *QueryColumnType) UnmarshalJSON(bytes []byte) error

type QueryComparisonExpression

type QueryComparisonExpression struct {
	Name     string            `json:"name"`
	Operator QueryOperatorType `json:"operator"`
	Values   []string          `json:"values"`
}

type QueryDataset

type QueryDataset struct {
	Aggregation   *map[string]QueryAggregation `json:"aggregation,omitempty"`
	Configuration *QueryDatasetConfiguration   `json:"configuration,omitempty"`
	Filter        *QueryFilter                 `json:"filter,omitempty"`
	Granularity   *GranularityType             `json:"granularity,omitempty"`
	Grouping      *[]QueryGrouping             `json:"grouping,omitempty"`
}

type QueryDatasetConfiguration

type QueryDatasetConfiguration struct {
	Columns *[]string `json:"columns,omitempty"`
}

type QueryDefinition

type QueryDefinition struct {
	Dataset    QueryDataset     `json:"dataset"`
	TimePeriod *QueryTimePeriod `json:"timePeriod,omitempty"`
	Timeframe  TimeframeType    `json:"timeframe"`
	Type       ExportType       `json:"type"`
}

type QueryFilter

type QueryFilter struct {
	And        *[]QueryFilter             `json:"and,omitempty"`
	Dimensions *QueryComparisonExpression `json:"dimensions,omitempty"`
	Or         *[]QueryFilter             `json:"or,omitempty"`
	Tags       *QueryComparisonExpression `json:"tags,omitempty"`
}

type QueryGrouping

type QueryGrouping struct {
	Name string          `json:"name"`
	Type QueryColumnType `json:"type"`
}

type QueryOperatorType

type QueryOperatorType string
const (
	QueryOperatorTypeIn QueryOperatorType = "In"
)

func (*QueryOperatorType) UnmarshalJSON added in v0.20230411.1183115

func (s *QueryOperatorType) UnmarshalJSON(bytes []byte) error

type QueryProperties

type QueryProperties struct {
	Columns  *[]QueryColumn   `json:"columns,omitempty"`
	NextLink *string          `json:"nextLink,omitempty"`
	Rows     *[][]interface{} `json:"rows,omitempty"`
}

type QueryResult

type QueryResult struct {
	ETag       *string            `json:"eTag,omitempty"`
	Id         *string            `json:"id,omitempty"`
	Location   *string            `json:"location,omitempty"`
	Name       *string            `json:"name,omitempty"`
	Properties *QueryProperties   `json:"properties,omitempty"`
	Sku        *string            `json:"sku,omitempty"`
	Tags       *map[string]string `json:"tags,omitempty"`
	Type       *string            `json:"type,omitempty"`
}

type QueryTimePeriod

type QueryTimePeriod struct {
	From string `json:"from"`
	To   string `json:"to"`
}

func (*QueryTimePeriod) GetFromAsTime

func (o *QueryTimePeriod) GetFromAsTime() (*time.Time, error)

func (*QueryTimePeriod) GetToAsTime

func (o *QueryTimePeriod) GetToAsTime() (*time.Time, error)

func (*QueryTimePeriod) SetFromAsTime

func (o *QueryTimePeriod) SetFromAsTime(input time.Time)

func (*QueryTimePeriod) SetToAsTime

func (o *QueryTimePeriod) SetToAsTime(input time.Time)

type TimeframeType

type TimeframeType string
const (
	TimeframeTypeBillingMonthToDate  TimeframeType = "BillingMonthToDate"
	TimeframeTypeCustom              TimeframeType = "Custom"
	TimeframeTypeMonthToDate         TimeframeType = "MonthToDate"
	TimeframeTypeTheLastBillingMonth TimeframeType = "TheLastBillingMonth"
	TimeframeTypeTheLastMonth        TimeframeType = "TheLastMonth"
	TimeframeTypeWeekToDate          TimeframeType = "WeekToDate"
)

func (*TimeframeType) UnmarshalJSON added in v0.20230411.1183115

func (s *TimeframeType) UnmarshalJSON(bytes []byte) error

type UsageByExternalCloudProviderTypeOperationResponse

type UsageByExternalCloudProviderTypeOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *QueryResult
}

type UsageOperationResponse

type UsageOperationResponse struct {
	HttpResponse *http.Response
	OData        *odata.OData
	Model        *QueryResult
}

Jump to

Keyboard shortcuts

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