SubscriptionCostManagementViewArgs

data class SubscriptionCostManagementViewArgs(val accumulated: Output<Boolean>? = null, val chartType: Output<String>? = null, val dataset: Output<SubscriptionCostManagementViewDatasetArgs>? = null, val displayName: Output<String>? = null, val kpis: Output<List<SubscriptionCostManagementViewKpiArgs>>? = null, val name: Output<String>? = null, val pivots: Output<List<SubscriptionCostManagementViewPivotArgs>>? = null, val reportType: Output<String>? = null, val subscriptionId: Output<String>? = null, val timeframe: Output<String>? = null) : ConvertibleToJava<SubscriptionCostManagementViewArgs>

Manages an Azure Cost Management View for a Subscription.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.SubscriptionCostManagementView("example", {
name: "example",
displayName: "Cost View per Month",
chartType: "StackedColumn",
accumulated: false,
subscriptionId: "/subscription/00000000-0000-0000-0000-000000000000",
reportType: "Usage",
timeframe: "MonthToDate",
dataset: {
granularity: "Monthly",
aggregations: [{
name: "totalCost",
columnName: "Cost",
}],
},
});
import pulumi
import pulumi_azure as azure
example = azure.core.SubscriptionCostManagementView("example",
name="example",
display_name="Cost View per Month",
chart_type="StackedColumn",
accumulated=False,
subscription_id="/subscription/00000000-0000-0000-0000-000000000000",
report_type="Usage",
timeframe="MonthToDate",
dataset={
"granularity": "Monthly",
"aggregations": [{
"name": "totalCost",
"column_name": "Cost",
}],
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.SubscriptionCostManagementView("example", new()
{
Name = "example",
DisplayName = "Cost View per Month",
ChartType = "StackedColumn",
Accumulated = false,
SubscriptionId = "/subscription/00000000-0000-0000-0000-000000000000",
ReportType = "Usage",
Timeframe = "MonthToDate",
Dataset = new Azure.Core.Inputs.SubscriptionCostManagementViewDatasetArgs
{
Granularity = "Monthly",
Aggregations = new[]
{
new Azure.Core.Inputs.SubscriptionCostManagementViewDatasetAggregationArgs
{
Name = "totalCost",
ColumnName = "Cost",
},
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := core.NewSubscriptionCostManagementView(ctx, "example", &core.SubscriptionCostManagementViewArgs{
Name: pulumi.String("example"),
DisplayName: pulumi.String("Cost View per Month"),
ChartType: pulumi.String("StackedColumn"),
Accumulated: pulumi.Bool(false),
SubscriptionId: pulumi.String("/subscription/00000000-0000-0000-0000-000000000000"),
ReportType: pulumi.String("Usage"),
Timeframe: pulumi.String("MonthToDate"),
Dataset: &core.SubscriptionCostManagementViewDatasetArgs{
Granularity: pulumi.String("Monthly"),
Aggregations: core.SubscriptionCostManagementViewDatasetAggregationArray{
&core.SubscriptionCostManagementViewDatasetAggregationArgs{
Name: pulumi.String("totalCost"),
ColumnName: pulumi.String("Cost"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.SubscriptionCostManagementView;
import com.pulumi.azure.core.SubscriptionCostManagementViewArgs;
import com.pulumi.azure.core.inputs.SubscriptionCostManagementViewDatasetArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new SubscriptionCostManagementView("example", SubscriptionCostManagementViewArgs.builder()
.name("example")
.displayName("Cost View per Month")
.chartType("StackedColumn")
.accumulated(false)
.subscriptionId("/subscription/00000000-0000-0000-0000-000000000000")
.reportType("Usage")
.timeframe("MonthToDate")
.dataset(SubscriptionCostManagementViewDatasetArgs.builder()
.granularity("Monthly")
.aggregations(SubscriptionCostManagementViewDatasetAggregationArgs.builder()
.name("totalCost")
.columnName("Cost")
.build())
.build())
.build());
}
}
resources:
example:
type: azure:core:SubscriptionCostManagementView
properties:
name: example
displayName: Cost View per Month
chartType: StackedColumn
accumulated: false
subscriptionId: /subscription/00000000-0000-0000-0000-000000000000
reportType: Usage
timeframe: MonthToDate
dataset:
granularity: Monthly
aggregations:
- name: totalCost
columnName: Cost

Import

Cost Management View for a Subscriptions can be imported using the resource id, e.g.

$ pulumi import azure:core/subscriptionCostManagementView:SubscriptionCostManagementView example /subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.CostManagement/views/costmanagementview

Constructors

Link copied to clipboard
constructor(accumulated: Output<Boolean>? = null, chartType: Output<String>? = null, dataset: Output<SubscriptionCostManagementViewDatasetArgs>? = null, displayName: Output<String>? = null, kpis: Output<List<SubscriptionCostManagementViewKpiArgs>>? = null, name: Output<String>? = null, pivots: Output<List<SubscriptionCostManagementViewPivotArgs>>? = null, reportType: Output<String>? = null, subscriptionId: Output<String>? = null, timeframe: Output<String>? = null)

Properties

Link copied to clipboard
val accumulated: Output<Boolean>? = null

Whether the costs data in the Cost Management View are accumulated over time. Changing this forces a new Cost Management View for a Subscription to be created.

Link copied to clipboard
val chartType: Output<String>? = null

Chart type of the main view in Cost Analysis. Possible values are Area, GroupedColumn, Line, StackedColumn and Table.

Link copied to clipboard

A dataset block as defined below.

Link copied to clipboard
val displayName: Output<String>? = null

User visible input name of the Cost Management View.

Link copied to clipboard

One or more kpi blocks as defined below, to show in Cost Analysis UI.

Link copied to clipboard
val name: Output<String>? = null

The name which should be used for this Cost Management View for a Subscription. Changing this forces a new Cost Management View for a Subscription to be created.

Link copied to clipboard

One or more pivot blocks as defined below, containing the configuration of 3 sub-views in the Cost Analysis UI. Non table views should have three pivots.

Link copied to clipboard
val reportType: Output<String>? = null

The type of the report. The only possible value is Usage.

Link copied to clipboard
val subscriptionId: Output<String>? = null

The ID of the Subscription this View is scoped to. Changing this forces a new Cost Management View for a Subscription to be created.

Link copied to clipboard
val timeframe: Output<String>? = null

The time frame for pulling data for the report. Possible values are Custom, MonthToDate, WeekToDate and YearToDate.

Functions

Link copied to clipboard
open override fun toJava(): SubscriptionCostManagementViewArgs