From 810056cd4d26f7b86d26314ddb000cd8b05e154d Mon Sep 17 00:00:00 2001 From: Benjamin Bouvier Date: Tue, 13 May 2025 12:33:36 +0200 Subject: [PATCH] refactor(timeline): add logging for the pinned events task --- crates/matrix-sdk-ui/src/timeline/builder.rs | 29 ++++++++++++++------ 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/crates/matrix-sdk-ui/src/timeline/builder.rs b/crates/matrix-sdk-ui/src/timeline/builder.rs index 60e300cea..a34ac5878 100644 --- a/crates/matrix-sdk-ui/src/timeline/builder.rs +++ b/crates/matrix-sdk-ui/src/timeline/builder.rs @@ -30,7 +30,7 @@ use matrix_sdk::{ use ruma::{events::AnySyncTimelineEvent, OwnedEventId, RoomVersionId}; use tokio::sync::broadcast::{error::RecvError, Receiver}; use tokio_stream::wrappers::errors::BroadcastStreamRecvError; -use tracing::{info_span, trace, warn, Instrument, Span}; +use tracing::{info_span, instrument, trace, warn, Instrument, Span}; use super::{ controller::{TimelineController, TimelineSettings}, @@ -312,6 +312,12 @@ impl TimelineBuilder { } /// The task that handles the pinned event IDs updates. +#[instrument( + skip_all, + fields( + room_id = %timeline_controller.room().room_id(), + ) +)] async fn pinned_events_task(pinned_event_ids_stream: S, timeline_controller: TimelineController) where S: Stream>, @@ -319,13 +325,20 @@ where pin_mut!(pinned_event_ids_stream); while pinned_event_ids_stream.next().await.is_some() { - if let Ok(events) = timeline_controller.reload_pinned_events().await { - timeline_controller - .replace_with_initial_remote_events( - events.into_iter(), - RemoteEventOrigin::Pagination, - ) - .await; + trace!("received a pinned events update"); + match timeline_controller.reload_pinned_events().await { + Ok(events) => { + trace!("successfully reloaded pinned events"); + timeline_controller + .replace_with_initial_remote_events( + events.into_iter(), + RemoteEventOrigin::Pagination, + ) + .await; + } + Err(err) => { + warn!("Failed to reload pinned events: {err}"); + } } } }