pub struct ResponseObserver { /* private fields */ }Expand description
Component for observing HTTP responses and triggering agent info fetches.
This component checks HTTP responses for the Datadog-Agent-State header and
sends trigger messages to the agent info fetcher when a new state is detected.
Implementations§
Source§impl ResponseObserver
impl ResponseObserver
Sourcepub fn new(trigger_tx: Sender<()>) -> Self
pub fn new(trigger_tx: Sender<()>) -> Self
Create a new ResponseObserver with the given channel sender.
Sourcepub fn check_response(&self, response: &HttpResponse)
pub fn check_response(&self, response: &HttpResponse)
Check the given HTTP response for agent state changes and trigger a fetch if needed.
This method examines the Datadog-Agent-State header in the response and compares
it with the previously seen state. If the state has changed, it sends a trigger
message to the agent info fetcher.
Sourcepub fn manual_trigger(&self)
pub fn manual_trigger(&self)
Manually send a message to the trigger channel.
Trait Implementations§
Source§impl Clone for ResponseObserver
impl Clone for ResponseObserver
Source§fn clone(&self) -> ResponseObserver
fn clone(&self) -> ResponseObserver
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ResponseObserver
impl RefUnwindSafe for ResponseObserver
impl Send for ResponseObserver
impl Sync for ResponseObserver
impl Unpin for ResponseObserver
impl UnsafeUnpin for ResponseObserver
impl UnwindSafe for ResponseObserver
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
Mutably borrows from an owned value. Read more
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more