pub struct Recommendation {
pub name: String,
pub description: String,
pub recommender_subtype: String,
pub last_refresh_time: Option<Timestamp>,
pub primary_impact: Option<Impact>,
pub additional_impact: Vec<Impact>,
pub content: Option<RecommendationContent>,
pub state_info: Option<RecommendationStateInfo>,
pub etag: String,
}
Expand description
A recommendation along with a suggested action. E.g., a rightsizing recommendation for an underutilized VM, IAM role recommendations, etc
Fields§
§name: String
Name of recommendation.
description: String
Free-form human readable summary in English. The maximum length is 500 characters.
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”
last_refresh_time: Option<Timestamp>
Last time this recommendation was refreshed by the system that created it in the first place.
primary_impact: Option<Impact>
The primary impact that this recommendation can have while trying to optimize for one category.
additional_impact: Vec<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.
content: Option<RecommendationContent>
Content of the recommendation describing recommended changes to resources.
state_info: Option<RecommendationStateInfo>
Information for state. Contains state and metadata.
etag: String
Fingerprint of the Recommendation. Provides optimistic locking when updating states.
Trait Implementations§
Source§impl Clone for Recommendation
impl Clone for Recommendation
Source§fn clone(&self) -> Recommendation
fn clone(&self) -> Recommendation
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for Recommendation
impl Debug for Recommendation
Source§impl Default for Recommendation
impl Default for Recommendation
Source§fn default() -> Recommendation
fn default() -> Recommendation
Source§impl Message for Recommendation
impl Message for Recommendation
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn decode<B>(buf: B) -> Result<Self, DecodeError>
fn decode<B>(buf: B) -> Result<Self, DecodeError>
Source§fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
Source§fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
self
. Read moreSource§fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
self
.Source§impl PartialEq for Recommendation
impl PartialEq for Recommendation
impl StructuralPartialEq for Recommendation
Auto Trait Implementations§
impl Freeze for Recommendation
impl RefUnwindSafe for Recommendation
impl Send for Recommendation
impl Sync for Recommendation
impl Unpin for Recommendation
impl UnwindSafe for Recommendation
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request