From d6300bbda771e1afdc2ea86cd2a8cc19475edae7 Mon Sep 17 00:00:00 2001 From: Benjamin Bouvier Date: Thu, 4 Jul 2024 17:34:42 +0200 Subject: [PATCH] http_client: log each attempt at sending a request, instead of a single one When a request fails because of the exponential backoff, it won't be re-logged again. It would be useful, for the purposes of the send queue notably, to see when a request is re-attempted. --- crates/matrix-sdk/src/http_client/mod.rs | 2 -- crates/matrix-sdk/src/http_client/native.rs | 4 +++- crates/matrix-sdk/src/http_client/wasm.rs | 2 ++ 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/crates/matrix-sdk/src/http_client/mod.rs b/crates/matrix-sdk/src/http_client/mod.rs index 7521f5324..fbba7b91a 100644 --- a/crates/matrix-sdk/src/http_client/mod.rs +++ b/crates/matrix-sdk/src/http_client/mod.rs @@ -221,8 +221,6 @@ impl HttpClient { // will be automatically dropped at the end of this function let _handle = self.concurrent_request_semaphore.acquire().await; - debug!("Sending request"); - // There's a bunch of state in send_request, factor out a pinned inner // future to reduce this size of futures that await this function. match Box::pin(self.send_request::(request, config, send_progress)).await { diff --git a/crates/matrix-sdk/src/http_client/native.rs b/crates/matrix-sdk/src/http_client/native.rs index c037b04fd..764219fee 100644 --- a/crates/matrix-sdk/src/http_client/native.rs +++ b/crates/matrix-sdk/src/http_client/native.rs @@ -26,7 +26,7 @@ use eyeball::SharedObservable; use http::header::CONTENT_LENGTH; use reqwest::Certificate; use ruma::api::{error::FromHttpResponseError, IncomingResponse, OutgoingRequest}; -use tracing::{info, warn}; +use tracing::{debug, info, warn}; use super::{response_to_http_response, HttpClient, TransmissionProgress, DEFAULT_REQUEST_TIMEOUT}; use crate::{ @@ -52,6 +52,8 @@ impl HttpClient { let send_request = || { let send_progress = send_progress.clone(); async { + debug!(num_attempt = retry_count.load(Ordering::SeqCst), "Sending request"); + let stop = if let Some(retry_limit) = config.retry_limit { retry_count.fetch_add(1, Ordering::Relaxed) >= retry_limit } else { diff --git a/crates/matrix-sdk/src/http_client/wasm.rs b/crates/matrix-sdk/src/http_client/wasm.rs index d6de1321a..0c438d519 100644 --- a/crates/matrix-sdk/src/http_client/wasm.rs +++ b/crates/matrix-sdk/src/http_client/wasm.rs @@ -33,6 +33,8 @@ impl HttpClient { R: OutgoingRequest + Debug, HttpError: From>, { + tracing::debug!("Sending request"); + let request = reqwest::Request::try_from(request)?; let response = response_to_http_response(self.inner.execute(request).await?).await?;