Class: Google::Cloud::Recommender::V1::Recommendation

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/recommender/v1/recommendation.rb

Overview

A recommendation along with a suggested action. E.g., a rightsizing recommendation for an underutilized VM, IAM role recommendations, etc

Defined Under Namespace

Modules: Priority Classes: InsightReference

Instance Attribute Summary collapse

Instance Attribute Details

#additional_impact::Array<::Google::Cloud::Recommender::V1::Impact>

Returns Optional set of additional impact that this recommendation may have when trying to optimize for the primary category. These may be positive or negative.

Returns:

  • (::Array<::Google::Cloud::Recommender::V1::Impact>)

    Optional set of additional impact that this recommendation may have when trying to optimize for the primary category. These may be positive or negative.



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#associated_insights::Array<::Google::Cloud::Recommender::V1::Recommendation::InsightReference>

Returns Insights that led to this recommendation.

Returns:



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#content::Google::Cloud::Recommender::V1::RecommendationContent

Returns Content of the recommendation describing recommended changes to resources.

Returns:



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#description::String

Returns Free-form human readable summary in English. The maximum length is 500 characters.

Returns:

  • (::String)

    Free-form human readable summary in English. The maximum length is 500 characters.



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#etag::String

Returns Fingerprint of the Recommendation. Provides optimistic locking when updating states.

Returns:

  • (::String)

    Fingerprint of the Recommendation. Provides optimistic locking when updating states.



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#last_refresh_time::Google::Protobuf::Timestamp

Returns Last time this recommendation was refreshed by the system that created it in the first place.

Returns:



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#name::String

Returns Name of recommendation.

Returns:

  • (::String)

    Name of recommendation.



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#primary_impact::Google::Cloud::Recommender::V1::Impact

Returns The primary impact that this recommendation can have while trying to optimize for one category.

Returns:



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#priority::Google::Cloud::Recommender::V1::Recommendation::Priority

Returns Recommendation's priority.

Returns:



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#recommender_subtype::String

Returns 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".

Returns:

  • (::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"



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#state_info::Google::Cloud::Recommender::V1::RecommendationStateInfo

Returns Information for state. Contains state and metadata.

Returns:



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end

#xor_group_id::String

Returns 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.

Returns:

  • (::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.



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'proto_docs/google/cloud/recommender/v1/recommendation.rb', line 79

class Recommendation
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Reference to an associated insight.
  # @!attribute [rw] insight
  #   @return [::String]
  #     Insight resource name, e.g.
  #     projects/[PROJECT_NUMBER]/locations/[LOCATION]/insightTypes/[INSIGHT_TYPE_ID]/insights/[INSIGHT_ID]
  class InsightReference
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Recommendation priority levels.
  module Priority
    # Recommendation has unspecified priority.
    PRIORITY_UNSPECIFIED = 0

    # Recommendation has P4 priority (lowest priority).
    P4 = 1

    # Recommendation has P3 priority (second lowest priority).
    P3 = 2

    # Recommendation has P2 priority (second highest priority).
    P2 = 3

    # Recommendation has P1 priority (highest priority).
    P1 = 4
  end
end