query

package
v0.20240320.1000025 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2024 License: MPL-2.0 Imports: 13 Imported by: 1

README

github.com/hashicorp/go-azure-sdk/resource-manager/costmanagement/2023-03-01/query Documentation

The query SDK allows for interaction with the Azure Resource Manager Service costmanagement (API Version 2023-03-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-helpers/resourcemanager/commonids"
import "github.com/hashicorp/go-azure-sdk/resource-manager/costmanagement/2023-03-01/query"

Client Initialization

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

Example Usage: QueryClient.Usage

ctx := context.TODO()
id := commonids.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

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

type ExternalCloudProviderType

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

func (*ExternalCloudProviderType) UnmarshalJSON

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) FromParseResult

func (id *ExternalCloudProviderTypeId) FromParseResult(input resourceids.ParseResult) error

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

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

type GranularityType

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

func (*GranularityType) UnmarshalJSON

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

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

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

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