From 3f82676a81c5788b675df4b79de87e653a8f91f8 Mon Sep 17 00:00:00 2001 From: Olivia Lee Date: Fri, 23 Aug 2024 20:15:28 -0700 Subject: [PATCH] add log_errors parameter to send_federation_request builder This allows us to use send_federation_request for federation transactions. --- src/service/sending.rs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/service/sending.rs b/src/service/sending.rs index ac861af3..42bba689 100644 --- a/src/service/sending.rs +++ b/src/service/sending.rs @@ -122,6 +122,7 @@ pub(crate) struct RequestData { pub(crate) struct SendFederationRequestBuilder<'a, T> { destination: &'a ServerName, request: T, + log_errors: LogRequestError, } pub(crate) struct Service { @@ -686,6 +687,7 @@ impl Service { SendFederationRequestBuilder { destination, request, + log_errors: LogRequestError::Yes, } } @@ -714,6 +716,17 @@ impl Service { } } +impl SendFederationRequestBuilder<'_, T> { + /// Enable or disable automatically logging any error making this request. + /// + /// This should be disabled if the error is going to be logged elsewhere, + /// to avoid cluttering logs with duplicate error messages. + pub(crate) fn log_errors(mut self, log_errors: LogRequestError) -> Self { + self.log_errors = log_errors; + self + } +} + impl<'a, T> IntoFuture for SendFederationRequestBuilder<'a, T> where T: OutgoingRequest + Send + Debug + 'a, @@ -743,7 +756,7 @@ where server_server::send_request( self.destination, self.request, - LogRequestError::Yes, + self.log_errors, AllowLoopbackRequests::No, ), )