Class: Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1Recommendation
- Inherits:
-
Object
- Object
- Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1Recommendation
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/recommender_v1beta1/classes.rb,
lib/google/apis/recommender_v1beta1/representations.rb,
lib/google/apis/recommender_v1beta1/representations.rb
Overview
A recommendation along with a suggested action. E.g., a rightsizing recommendation for an underutilized VM, IAM role recommendations, etc
Instance Attribute Summary collapse
-
#additional_impact ⇒ Array<Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1Impact>
Optional set of additional impact that this recommendation may have when trying to optimize for the primary category.
-
#associated_insights ⇒ Array<Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1RecommendationInsightReference>
Insights that led to this recommendation.
-
#content ⇒ Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1RecommendationContent
Contains what resources are changing and how they are changing.
-
#description ⇒ String
Free-form human readable summary in English.
-
#etag ⇒ String
Fingerprint of the Recommendation.
-
#last_refresh_time ⇒ String
Last time this recommendation was refreshed by the system that created it in the first place.
-
#name ⇒ String
Identifier.
-
#primary_impact ⇒ Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1Impact
Contains the impact a recommendation can have for a given category.
-
#priority ⇒ String
Recommendation's priority.
-
#recommender_subtype ⇒ String
Contains an identifier for a subtype of recommendations produced for the same recommender.
-
#state_info ⇒ Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1RecommendationStateInfo
Information for state.
-
#target_resources ⇒ Array<String>
Fully qualified resource names that this recommendation is targeting.
-
#xor_group_id ⇒ String
Corresponds to a mutually exclusive group ID within a recommender.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudRecommenderV1beta1Recommendation
constructor
A new instance of GoogleCloudRecommenderV1beta1Recommendation.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudRecommenderV1beta1Recommendation
Returns a new instance of GoogleCloudRecommenderV1beta1Recommendation.
854 855 856 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 854 def initialize(**args) update!(**args) end |
Instance Attribute Details
#additional_impact ⇒ Array<Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1Impact>
Optional set of additional impact that this recommendation may have when
trying to optimize for the primary category. These may be positive or negative.
Corresponds to the JSON property additionalImpact
780 781 782 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 780 def additional_impact @additional_impact end |
#associated_insights ⇒ Array<Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1RecommendationInsightReference>
Insights that led to this recommendation.
Corresponds to the JSON property associatedInsights
785 786 787 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 785 def associated_insights @associated_insights end |
#content ⇒ Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1RecommendationContent
Contains what resources are changing and how they are changing.
Corresponds to the JSON property content
790 791 792 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 790 def content @content end |
#description ⇒ String
Free-form human readable summary in English. The maximum length is 500
characters.
Corresponds to the JSON property description
796 797 798 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 796 def description @description end |
#etag ⇒ String
Fingerprint of the Recommendation. Provides optimistic locking when updating
states.
Corresponds to the JSON property etag
802 803 804 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 802 def etag @etag end |
#last_refresh_time ⇒ String
Last time this recommendation was refreshed by the system that created it in
the first place.
Corresponds to the JSON property lastRefreshTime
808 809 810 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 808 def last_refresh_time @last_refresh_time end |
#name ⇒ String
Identifier. Name of recommendation.
Corresponds to the JSON property name
813 814 815 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 813 def name @name end |
#primary_impact ⇒ Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1Impact
Contains the impact a recommendation can have for a given category.
Corresponds to the JSON property primaryImpact
818 819 820 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 818 def primary_impact @primary_impact end |
#priority ⇒ String
Recommendation's priority.
Corresponds to the JSON property priority
823 824 825 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 823 def priority @priority end |
#recommender_subtype ⇒ String
Contains an identifier for a subtype of recommendations produced for the same
recommender. Subtype is a function of content and impact, meaning a new
subtype might be added when significant changes to content
or
primary_impact.category
are introduced. See the Recommenders section to see a
list of subtypes for a given Recommender. Examples: For recommender = "google.
iam.policy.Recommender", recommender_subtype can be one of "REMOVE_ROLE"/"
REPLACE_ROLE"
Corresponds to the JSON property recommenderSubtype
834 835 836 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 834 def recommender_subtype @recommender_subtype end |
#state_info ⇒ Google::Apis::RecommenderV1beta1::GoogleCloudRecommenderV1beta1RecommendationStateInfo
Information for state. Contains state and metadata.
Corresponds to the JSON property stateInfo
839 840 841 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 839 def state_info @state_info end |
#target_resources ⇒ Array<String>
Fully qualified resource names that this recommendation is targeting.
Corresponds to the JSON property targetResources
844 845 846 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 844 def target_resources @target_resources end |
#xor_group_id ⇒ String
Corresponds to a mutually exclusive group ID within a recommender. A non-empty
ID indicates that the recommendation belongs to a mutually exclusive group.
This means that only one recommendation within the group is suggested to be
applied.
Corresponds to the JSON property xorGroupId
852 853 854 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 852 def xor_group_id @xor_group_id end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 |
# File 'lib/google/apis/recommender_v1beta1/classes.rb', line 859 def update!(**args) @additional_impact = args[:additional_impact] if args.key?(:additional_impact) @associated_insights = args[:associated_insights] if args.key?(:associated_insights) @content = args[:content] if args.key?(:content) @description = args[:description] if args.key?(:description) @etag = args[:etag] if args.key?(:etag) @last_refresh_time = args[:last_refresh_time] if args.key?(:last_refresh_time) @name = args[:name] if args.key?(:name) @primary_impact = args[:primary_impact] if args.key?(:primary_impact) @priority = args[:priority] if args.key?(:priority) @recommender_subtype = args[:recommender_subtype] if args.key?(:recommender_subtype) @state_info = args[:state_info] if args.key?(:state_info) @target_resources = args[:target_resources] if args.key?(:target_resources) @xor_group_id = args[:xor_group_id] if args.key?(:xor_group_id) end |