aws.computeoptimizer.RecommendationPreferences
Explore with Pulumi AI
Manages AWS Compute Optimizer recommendation preferences.
Example Usage
Lookback Period Preference
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.computeoptimizer.RecommendationPreferences("example", {
    resourceType: "Ec2Instance",
    scope: {
        name: "AccountId",
        value: "123456789012",
    },
    lookBackPeriod: "DAYS_32",
});
import pulumi
import pulumi_aws as aws
example = aws.computeoptimizer.RecommendationPreferences("example",
    resource_type="Ec2Instance",
    scope={
        "name": "AccountId",
        "value": "123456789012",
    },
    look_back_period="DAYS_32")
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/computeoptimizer"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := computeoptimizer.NewRecommendationPreferences(ctx, "example", &computeoptimizer.RecommendationPreferencesArgs{
			ResourceType: pulumi.String("Ec2Instance"),
			Scope: &computeoptimizer.RecommendationPreferencesScopeArgs{
				Name:  pulumi.String("AccountId"),
				Value: pulumi.String("123456789012"),
			},
			LookBackPeriod: pulumi.String("DAYS_32"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var example = new Aws.ComputeOptimizer.RecommendationPreferences("example", new()
    {
        ResourceType = "Ec2Instance",
        Scope = new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesScopeArgs
        {
            Name = "AccountId",
            Value = "123456789012",
        },
        LookBackPeriod = "DAYS_32",
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.computeoptimizer.RecommendationPreferences;
import com.pulumi.aws.computeoptimizer.RecommendationPreferencesArgs;
import com.pulumi.aws.computeoptimizer.inputs.RecommendationPreferencesScopeArgs;
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 RecommendationPreferences("example", RecommendationPreferencesArgs.builder()
            .resourceType("Ec2Instance")
            .scope(RecommendationPreferencesScopeArgs.builder()
                .name("AccountId")
                .value("123456789012")
                .build())
            .lookBackPeriod("DAYS_32")
            .build());
    }
}
resources:
  example:
    type: aws:computeoptimizer:RecommendationPreferences
    properties:
      resourceType: Ec2Instance
      scope:
        name: AccountId
        value: '123456789012'
      lookBackPeriod: DAYS_32
Multiple Preferences
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.computeoptimizer.RecommendationPreferences("example", {
    resourceType: "Ec2Instance",
    scope: {
        name: "AccountId",
        value: "123456789012",
    },
    enhancedInfrastructureMetrics: "Active",
    externalMetricsPreference: {
        source: "Datadog",
    },
    preferredResources: [{
        includeLists: [
            "m5.xlarge",
            "r5",
        ],
        name: "Ec2InstanceTypes",
    }],
});
import pulumi
import pulumi_aws as aws
example = aws.computeoptimizer.RecommendationPreferences("example",
    resource_type="Ec2Instance",
    scope={
        "name": "AccountId",
        "value": "123456789012",
    },
    enhanced_infrastructure_metrics="Active",
    external_metrics_preference={
        "source": "Datadog",
    },
    preferred_resources=[{
        "include_lists": [
            "m5.xlarge",
            "r5",
        ],
        "name": "Ec2InstanceTypes",
    }])
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/computeoptimizer"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := computeoptimizer.NewRecommendationPreferences(ctx, "example", &computeoptimizer.RecommendationPreferencesArgs{
			ResourceType: pulumi.String("Ec2Instance"),
			Scope: &computeoptimizer.RecommendationPreferencesScopeArgs{
				Name:  pulumi.String("AccountId"),
				Value: pulumi.String("123456789012"),
			},
			EnhancedInfrastructureMetrics: pulumi.String("Active"),
			ExternalMetricsPreference: &computeoptimizer.RecommendationPreferencesExternalMetricsPreferenceArgs{
				Source: pulumi.String("Datadog"),
			},
			PreferredResources: computeoptimizer.RecommendationPreferencesPreferredResourceArray{
				&computeoptimizer.RecommendationPreferencesPreferredResourceArgs{
					IncludeLists: pulumi.StringArray{
						pulumi.String("m5.xlarge"),
						pulumi.String("r5"),
					},
					Name: pulumi.String("Ec2InstanceTypes"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var example = new Aws.ComputeOptimizer.RecommendationPreferences("example", new()
    {
        ResourceType = "Ec2Instance",
        Scope = new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesScopeArgs
        {
            Name = "AccountId",
            Value = "123456789012",
        },
        EnhancedInfrastructureMetrics = "Active",
        ExternalMetricsPreference = new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesExternalMetricsPreferenceArgs
        {
            Source = "Datadog",
        },
        PreferredResources = new[]
        {
            new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesPreferredResourceArgs
            {
                IncludeLists = new[]
                {
                    "m5.xlarge",
                    "r5",
                },
                Name = "Ec2InstanceTypes",
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.computeoptimizer.RecommendationPreferences;
import com.pulumi.aws.computeoptimizer.RecommendationPreferencesArgs;
import com.pulumi.aws.computeoptimizer.inputs.RecommendationPreferencesScopeArgs;
import com.pulumi.aws.computeoptimizer.inputs.RecommendationPreferencesExternalMetricsPreferenceArgs;
import com.pulumi.aws.computeoptimizer.inputs.RecommendationPreferencesPreferredResourceArgs;
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 RecommendationPreferences("example", RecommendationPreferencesArgs.builder()
            .resourceType("Ec2Instance")
            .scope(RecommendationPreferencesScopeArgs.builder()
                .name("AccountId")
                .value("123456789012")
                .build())
            .enhancedInfrastructureMetrics("Active")
            .externalMetricsPreference(RecommendationPreferencesExternalMetricsPreferenceArgs.builder()
                .source("Datadog")
                .build())
            .preferredResources(RecommendationPreferencesPreferredResourceArgs.builder()
                .includeLists(                
                    "m5.xlarge",
                    "r5")
                .name("Ec2InstanceTypes")
                .build())
            .build());
    }
}
resources:
  example:
    type: aws:computeoptimizer:RecommendationPreferences
    properties:
      resourceType: Ec2Instance
      scope:
        name: AccountId
        value: '123456789012'
      enhancedInfrastructureMetrics: Active
      externalMetricsPreference:
        source: Datadog
      preferredResources:
        - includeLists:
            - m5.xlarge
            - r5
          name: Ec2InstanceTypes
Create RecommendationPreferences Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new RecommendationPreferences(name: string, args: RecommendationPreferencesArgs, opts?: CustomResourceOptions);@overload
def RecommendationPreferences(resource_name: str,
                              args: RecommendationPreferencesArgs,
                              opts: Optional[ResourceOptions] = None)
@overload
def RecommendationPreferences(resource_name: str,
                              opts: Optional[ResourceOptions] = None,
                              resource_type: Optional[str] = None,
                              enhanced_infrastructure_metrics: Optional[str] = None,
                              external_metrics_preference: Optional[RecommendationPreferencesExternalMetricsPreferenceArgs] = None,
                              inferred_workload_types: Optional[str] = None,
                              look_back_period: Optional[str] = None,
                              preferred_resources: Optional[Sequence[RecommendationPreferencesPreferredResourceArgs]] = None,
                              savings_estimation_mode: Optional[str] = None,
                              scope: Optional[RecommendationPreferencesScopeArgs] = None,
                              utilization_preferences: Optional[Sequence[RecommendationPreferencesUtilizationPreferenceArgs]] = None)func NewRecommendationPreferences(ctx *Context, name string, args RecommendationPreferencesArgs, opts ...ResourceOption) (*RecommendationPreferences, error)public RecommendationPreferences(string name, RecommendationPreferencesArgs args, CustomResourceOptions? opts = null)
public RecommendationPreferences(String name, RecommendationPreferencesArgs args)
public RecommendationPreferences(String name, RecommendationPreferencesArgs args, CustomResourceOptions options)
type: aws:computeoptimizer:RecommendationPreferences
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args RecommendationPreferencesArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args RecommendationPreferencesArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args RecommendationPreferencesArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args RecommendationPreferencesArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args RecommendationPreferencesArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var recommendationPreferencesResource = new Aws.ComputeOptimizer.RecommendationPreferences("recommendationPreferencesResource", new()
{
    ResourceType = "string",
    EnhancedInfrastructureMetrics = "string",
    ExternalMetricsPreference = new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesExternalMetricsPreferenceArgs
    {
        Source = "string",
    },
    InferredWorkloadTypes = "string",
    LookBackPeriod = "string",
    PreferredResources = new[]
    {
        new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesPreferredResourceArgs
        {
            Name = "string",
            ExcludeLists = new[]
            {
                "string",
            },
            IncludeLists = new[]
            {
                "string",
            },
        },
    },
    SavingsEstimationMode = "string",
    Scope = new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesScopeArgs
    {
        Name = "string",
        Value = "string",
    },
    UtilizationPreferences = new[]
    {
        new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesUtilizationPreferenceArgs
        {
            MetricName = "string",
            MetricParameters = new Aws.ComputeOptimizer.Inputs.RecommendationPreferencesUtilizationPreferenceMetricParametersArgs
            {
                Headroom = "string",
                Threshold = "string",
            },
        },
    },
});
example, err := computeoptimizer.NewRecommendationPreferences(ctx, "recommendationPreferencesResource", &computeoptimizer.RecommendationPreferencesArgs{
	ResourceType:                  pulumi.String("string"),
	EnhancedInfrastructureMetrics: pulumi.String("string"),
	ExternalMetricsPreference: &computeoptimizer.RecommendationPreferencesExternalMetricsPreferenceArgs{
		Source: pulumi.String("string"),
	},
	InferredWorkloadTypes: pulumi.String("string"),
	LookBackPeriod:        pulumi.String("string"),
	PreferredResources: computeoptimizer.RecommendationPreferencesPreferredResourceArray{
		&computeoptimizer.RecommendationPreferencesPreferredResourceArgs{
			Name: pulumi.String("string"),
			ExcludeLists: pulumi.StringArray{
				pulumi.String("string"),
			},
			IncludeLists: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
	},
	SavingsEstimationMode: pulumi.String("string"),
	Scope: &computeoptimizer.RecommendationPreferencesScopeArgs{
		Name:  pulumi.String("string"),
		Value: pulumi.String("string"),
	},
	UtilizationPreferences: computeoptimizer.RecommendationPreferencesUtilizationPreferenceArray{
		&computeoptimizer.RecommendationPreferencesUtilizationPreferenceArgs{
			MetricName: pulumi.String("string"),
			MetricParameters: &computeoptimizer.RecommendationPreferencesUtilizationPreferenceMetricParametersArgs{
				Headroom:  pulumi.String("string"),
				Threshold: pulumi.String("string"),
			},
		},
	},
})
var recommendationPreferencesResource = new RecommendationPreferences("recommendationPreferencesResource", RecommendationPreferencesArgs.builder()
    .resourceType("string")
    .enhancedInfrastructureMetrics("string")
    .externalMetricsPreference(RecommendationPreferencesExternalMetricsPreferenceArgs.builder()
        .source("string")
        .build())
    .inferredWorkloadTypes("string")
    .lookBackPeriod("string")
    .preferredResources(RecommendationPreferencesPreferredResourceArgs.builder()
        .name("string")
        .excludeLists("string")
        .includeLists("string")
        .build())
    .savingsEstimationMode("string")
    .scope(RecommendationPreferencesScopeArgs.builder()
        .name("string")
        .value("string")
        .build())
    .utilizationPreferences(RecommendationPreferencesUtilizationPreferenceArgs.builder()
        .metricName("string")
        .metricParameters(RecommendationPreferencesUtilizationPreferenceMetricParametersArgs.builder()
            .headroom("string")
            .threshold("string")
            .build())
        .build())
    .build());
recommendation_preferences_resource = aws.computeoptimizer.RecommendationPreferences("recommendationPreferencesResource",
    resource_type="string",
    enhanced_infrastructure_metrics="string",
    external_metrics_preference={
        "source": "string",
    },
    inferred_workload_types="string",
    look_back_period="string",
    preferred_resources=[{
        "name": "string",
        "exclude_lists": ["string"],
        "include_lists": ["string"],
    }],
    savings_estimation_mode="string",
    scope={
        "name": "string",
        "value": "string",
    },
    utilization_preferences=[{
        "metric_name": "string",
        "metric_parameters": {
            "headroom": "string",
            "threshold": "string",
        },
    }])
const recommendationPreferencesResource = new aws.computeoptimizer.RecommendationPreferences("recommendationPreferencesResource", {
    resourceType: "string",
    enhancedInfrastructureMetrics: "string",
    externalMetricsPreference: {
        source: "string",
    },
    inferredWorkloadTypes: "string",
    lookBackPeriod: "string",
    preferredResources: [{
        name: "string",
        excludeLists: ["string"],
        includeLists: ["string"],
    }],
    savingsEstimationMode: "string",
    scope: {
        name: "string",
        value: "string",
    },
    utilizationPreferences: [{
        metricName: "string",
        metricParameters: {
            headroom: "string",
            threshold: "string",
        },
    }],
});
type: aws:computeoptimizer:RecommendationPreferences
properties:
    enhancedInfrastructureMetrics: string
    externalMetricsPreference:
        source: string
    inferredWorkloadTypes: string
    lookBackPeriod: string
    preferredResources:
        - excludeLists:
            - string
          includeLists:
            - string
          name: string
    resourceType: string
    savingsEstimationMode: string
    scope:
        name: string
        value: string
    utilizationPreferences:
        - metricName: string
          metricParameters:
            headroom: string
            threshold: string
RecommendationPreferences Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The RecommendationPreferences resource accepts the following input properties:
- ResourceType string
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- EnhancedInfrastructure stringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- ExternalMetrics RecommendationPreference Preferences External Metrics Preference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- InferredWorkload stringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- LookBack stringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- PreferredResources List<RecommendationPreferences Preferred Resource> 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- SavingsEstimation stringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- Scope
RecommendationPreferences Scope 
- The scope of the recommendation preferences. See Scope below.
- UtilizationPreferences List<RecommendationPreferences Utilization Preference> 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- ResourceType string
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- EnhancedInfrastructure stringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- ExternalMetrics RecommendationPreference Preferences External Metrics Preference Args 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- InferredWorkload stringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- LookBack stringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- PreferredResources []RecommendationPreferences Preferred Resource Args 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- SavingsEstimation stringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- Scope
RecommendationPreferences Scope Args 
- The scope of the recommendation preferences. See Scope below.
- UtilizationPreferences []RecommendationPreferences Utilization Preference Args 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- resourceType String
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- enhancedInfrastructure StringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- externalMetrics RecommendationPreference Preferences External Metrics Preference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferredWorkload StringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- lookBack StringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferredResources List<RecommendationPreferences Preferred Resource> 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- savingsEstimation StringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope
RecommendationPreferences Scope 
- The scope of the recommendation preferences. See Scope below.
- utilizationPreferences List<RecommendationPreferences Utilization Preference> 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- resourceType string
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- enhancedInfrastructure stringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- externalMetrics RecommendationPreference Preferences External Metrics Preference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferredWorkload stringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- lookBack stringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferredResources RecommendationPreferences Preferred Resource[] 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- savingsEstimation stringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope
RecommendationPreferences Scope 
- The scope of the recommendation preferences. See Scope below.
- utilizationPreferences RecommendationPreferences Utilization Preference[] 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- resource_type str
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- enhanced_infrastructure_ strmetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- external_metrics_ Recommendationpreference Preferences External Metrics Preference Args 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferred_workload_ strtypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- look_back_ strperiod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferred_resources Sequence[RecommendationPreferences Preferred Resource Args] 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- savings_estimation_ strmode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope
RecommendationPreferences Scope Args 
- The scope of the recommendation preferences. See Scope below.
- utilization_preferences Sequence[RecommendationPreferences Utilization Preference Args] 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- resourceType String
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- enhancedInfrastructure StringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- externalMetrics Property MapPreference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferredWorkload StringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- lookBack StringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferredResources List<Property Map>
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- savingsEstimation StringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope Property Map
- The scope of the recommendation preferences. See Scope below.
- utilizationPreferences List<Property Map>
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
Outputs
All input properties are implicitly available as output properties. Additionally, the RecommendationPreferences resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing RecommendationPreferences Resource
Get an existing RecommendationPreferences resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: RecommendationPreferencesState, opts?: CustomResourceOptions): RecommendationPreferences@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        enhanced_infrastructure_metrics: Optional[str] = None,
        external_metrics_preference: Optional[RecommendationPreferencesExternalMetricsPreferenceArgs] = None,
        inferred_workload_types: Optional[str] = None,
        look_back_period: Optional[str] = None,
        preferred_resources: Optional[Sequence[RecommendationPreferencesPreferredResourceArgs]] = None,
        resource_type: Optional[str] = None,
        savings_estimation_mode: Optional[str] = None,
        scope: Optional[RecommendationPreferencesScopeArgs] = None,
        utilization_preferences: Optional[Sequence[RecommendationPreferencesUtilizationPreferenceArgs]] = None) -> RecommendationPreferencesfunc GetRecommendationPreferences(ctx *Context, name string, id IDInput, state *RecommendationPreferencesState, opts ...ResourceOption) (*RecommendationPreferences, error)public static RecommendationPreferences Get(string name, Input<string> id, RecommendationPreferencesState? state, CustomResourceOptions? opts = null)public static RecommendationPreferences get(String name, Output<String> id, RecommendationPreferencesState state, CustomResourceOptions options)resources:  _:    type: aws:computeoptimizer:RecommendationPreferences    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- EnhancedInfrastructure stringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- ExternalMetrics RecommendationPreference Preferences External Metrics Preference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- InferredWorkload stringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- LookBack stringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- PreferredResources List<RecommendationPreferences Preferred Resource> 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- ResourceType string
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- SavingsEstimation stringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- Scope
RecommendationPreferences Scope 
- The scope of the recommendation preferences. See Scope below.
- UtilizationPreferences List<RecommendationPreferences Utilization Preference> 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- EnhancedInfrastructure stringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- ExternalMetrics RecommendationPreference Preferences External Metrics Preference Args 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- InferredWorkload stringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- LookBack stringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- PreferredResources []RecommendationPreferences Preferred Resource Args 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- ResourceType string
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- SavingsEstimation stringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- Scope
RecommendationPreferences Scope Args 
- The scope of the recommendation preferences. See Scope below.
- UtilizationPreferences []RecommendationPreferences Utilization Preference Args 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- enhancedInfrastructure StringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- externalMetrics RecommendationPreference Preferences External Metrics Preference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferredWorkload StringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- lookBack StringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferredResources List<RecommendationPreferences Preferred Resource> 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- resourceType String
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- savingsEstimation StringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope
RecommendationPreferences Scope 
- The scope of the recommendation preferences. See Scope below.
- utilizationPreferences List<RecommendationPreferences Utilization Preference> 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- enhancedInfrastructure stringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- externalMetrics RecommendationPreference Preferences External Metrics Preference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferredWorkload stringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- lookBack stringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferredResources RecommendationPreferences Preferred Resource[] 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- resourceType string
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- savingsEstimation stringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope
RecommendationPreferences Scope 
- The scope of the recommendation preferences. See Scope below.
- utilizationPreferences RecommendationPreferences Utilization Preference[] 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- enhanced_infrastructure_ strmetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- external_metrics_ Recommendationpreference Preferences External Metrics Preference Args 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferred_workload_ strtypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- look_back_ strperiod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferred_resources Sequence[RecommendationPreferences Preferred Resource Args] 
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- resource_type str
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- savings_estimation_ strmode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope
RecommendationPreferences Scope Args 
- The scope of the recommendation preferences. See Scope below.
- utilization_preferences Sequence[RecommendationPreferences Utilization Preference Args] 
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
- enhancedInfrastructure StringMetrics 
- The status of the enhanced infrastructure metrics recommendation preference. Valid values: Active,Inactive.
- externalMetrics Property MapPreference 
- The provider of the external metrics recommendation preference. See External Metrics Preference below.
- inferredWorkload StringTypes 
- The status of the inferred workload types recommendation preference. Valid values: Active,Inactive.
- lookBack StringPeriod 
- The preference to control the number of days the utilization metrics of the AWS resource are analyzed. Valid values: DAYS_14,DAYS_32,DAYS_93.
- preferredResources List<Property Map>
- The preference to control which resource type values are considered when generating rightsizing recommendations. See Preferred Resources below.
- resourceType String
- The target resource type of the recommendation preferences. Valid values: Ec2Instance,AutoScalingGroup,RdsDBInstance.
- savingsEstimation StringMode 
- The status of the savings estimation mode preference. Valid values: AfterDiscounts,BeforeDiscounts.
- scope Property Map
- The scope of the recommendation preferences. See Scope below.
- utilizationPreferences List<Property Map>
- The preference to control the resource’s CPU utilization threshold, CPU utilization headroom, and memory utilization headroom. See Utilization Preferences below.
Supporting Types
RecommendationPreferencesExternalMetricsPreference, RecommendationPreferencesExternalMetricsPreferenceArgs          
- Source string
- The source options for external metrics preferences. Valid values: Datadog,Dynatrace,NewRelic,Instana.
- Source string
- The source options for external metrics preferences. Valid values: Datadog,Dynatrace,NewRelic,Instana.
- source String
- The source options for external metrics preferences. Valid values: Datadog,Dynatrace,NewRelic,Instana.
- source string
- The source options for external metrics preferences. Valid values: Datadog,Dynatrace,NewRelic,Instana.
- source str
- The source options for external metrics preferences. Valid values: Datadog,Dynatrace,NewRelic,Instana.
- source String
- The source options for external metrics preferences. Valid values: Datadog,Dynatrace,NewRelic,Instana.
RecommendationPreferencesPreferredResource, RecommendationPreferencesPreferredResourceArgs        
- Name string
- ExcludeLists List<string>
- The preferred resource type values to exclude from the recommendation candidates. If this isn’t specified, all supported resources are included by default.
- IncludeLists List<string>
- The preferred resource type values to include in the recommendation candidates. You can specify the exact resource type value, such as "m5.large", or use wild card expressions, such as"m5". If this isn’t specified, all supported resources are included by default.
- Name string
- ExcludeLists []string
- The preferred resource type values to exclude from the recommendation candidates. If this isn’t specified, all supported resources are included by default.
- IncludeLists []string
- The preferred resource type values to include in the recommendation candidates. You can specify the exact resource type value, such as "m5.large", or use wild card expressions, such as"m5". If this isn’t specified, all supported resources are included by default.
- name String
- excludeLists List<String>
- The preferred resource type values to exclude from the recommendation candidates. If this isn’t specified, all supported resources are included by default.
- includeLists List<String>
- The preferred resource type values to include in the recommendation candidates. You can specify the exact resource type value, such as "m5.large", or use wild card expressions, such as"m5". If this isn’t specified, all supported resources are included by default.
- name string
- excludeLists string[]
- The preferred resource type values to exclude from the recommendation candidates. If this isn’t specified, all supported resources are included by default.
- includeLists string[]
- The preferred resource type values to include in the recommendation candidates. You can specify the exact resource type value, such as "m5.large", or use wild card expressions, such as"m5". If this isn’t specified, all supported resources are included by default.
- name str
- exclude_lists Sequence[str]
- The preferred resource type values to exclude from the recommendation candidates. If this isn’t specified, all supported resources are included by default.
- include_lists Sequence[str]
- The preferred resource type values to include in the recommendation candidates. You can specify the exact resource type value, such as "m5.large", or use wild card expressions, such as"m5". If this isn’t specified, all supported resources are included by default.
- name String
- excludeLists List<String>
- The preferred resource type values to exclude from the recommendation candidates. If this isn’t specified, all supported resources are included by default.
- includeLists List<String>
- The preferred resource type values to include in the recommendation candidates. You can specify the exact resource type value, such as "m5.large", or use wild card expressions, such as"m5". If this isn’t specified, all supported resources are included by default.
RecommendationPreferencesScope, RecommendationPreferencesScopeArgs      
RecommendationPreferencesUtilizationPreference, RecommendationPreferencesUtilizationPreferenceArgs        
- MetricName string
- The name of the resource utilization metric name to customize. Valid values: CpuUtilization,MemoryUtilization.
- MetricParameters RecommendationPreferences Utilization Preference Metric Parameters 
- The parameters to set when customizing the resource utilization thresholds.
- MetricName string
- The name of the resource utilization metric name to customize. Valid values: CpuUtilization,MemoryUtilization.
- MetricParameters RecommendationPreferences Utilization Preference Metric Parameters 
- The parameters to set when customizing the resource utilization thresholds.
- metricName String
- The name of the resource utilization metric name to customize. Valid values: CpuUtilization,MemoryUtilization.
- metricParameters RecommendationPreferences Utilization Preference Metric Parameters 
- The parameters to set when customizing the resource utilization thresholds.
- metricName string
- The name of the resource utilization metric name to customize. Valid values: CpuUtilization,MemoryUtilization.
- metricParameters RecommendationPreferences Utilization Preference Metric Parameters 
- The parameters to set when customizing the resource utilization thresholds.
- metric_name str
- The name of the resource utilization metric name to customize. Valid values: CpuUtilization,MemoryUtilization.
- metric_parameters RecommendationPreferences Utilization Preference Metric Parameters 
- The parameters to set when customizing the resource utilization thresholds.
- metricName String
- The name of the resource utilization metric name to customize. Valid values: CpuUtilization,MemoryUtilization.
- metricParameters Property Map
- The parameters to set when customizing the resource utilization thresholds.
RecommendationPreferencesUtilizationPreferenceMetricParameters, RecommendationPreferencesUtilizationPreferenceMetricParametersArgs            
- Headroom string
- The headroom value in percentage used for the specified metric parameter. Valid values: PERCENT_30,PERCENT_20,PERCENT_10,PERCENT_0.
- Threshold string
- The threshold value used for the specified metric parameter. You can only specify the threshold value for CPU utilization. Valid values: P90,P95,P99_5.
- Headroom string
- The headroom value in percentage used for the specified metric parameter. Valid values: PERCENT_30,PERCENT_20,PERCENT_10,PERCENT_0.
- Threshold string
- The threshold value used for the specified metric parameter. You can only specify the threshold value for CPU utilization. Valid values: P90,P95,P99_5.
- headroom String
- The headroom value in percentage used for the specified metric parameter. Valid values: PERCENT_30,PERCENT_20,PERCENT_10,PERCENT_0.
- threshold String
- The threshold value used for the specified metric parameter. You can only specify the threshold value for CPU utilization. Valid values: P90,P95,P99_5.
- headroom string
- The headroom value in percentage used for the specified metric parameter. Valid values: PERCENT_30,PERCENT_20,PERCENT_10,PERCENT_0.
- threshold string
- The threshold value used for the specified metric parameter. You can only specify the threshold value for CPU utilization. Valid values: P90,P95,P99_5.
- headroom str
- The headroom value in percentage used for the specified metric parameter. Valid values: PERCENT_30,PERCENT_20,PERCENT_10,PERCENT_0.
- threshold str
- The threshold value used for the specified metric parameter. You can only specify the threshold value for CPU utilization. Valid values: P90,P95,P99_5.
- headroom String
- The headroom value in percentage used for the specified metric parameter. Valid values: PERCENT_30,PERCENT_20,PERCENT_10,PERCENT_0.
- threshold String
- The threshold value used for the specified metric parameter. You can only specify the threshold value for CPU utilization. Valid values: P90,P95,P99_5.
Import
Using pulumi import, import recommendation preferences using the resource type, scope name and scope value. For example:
$ pulumi import aws:computeoptimizer/recommendationPreferences:RecommendationPreferences example Ec2Instance,AccountId,123456789012
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the awsTerraform Provider.