tuwunel_admin/query/peer_status/
record_failure.rs1use ruma::OwnedServerName;
2use tuwunel_core::Result;
3use tuwunel_service::federation::Classification;
4
5use crate::admin_command;
6
7#[admin_command]
8pub(super) async fn peer_status_record_failure(
9 &self,
10 server_name: OwnedServerName,
11 permanent: bool,
12) -> Result {
13 let classification = permanent
14 .then_some(Classification::Permanent)
15 .unwrap_or(Classification::Transient);
16
17 self.services
18 .federation
19 .record_failure(&server_name, classification);
20
21 write!(self, "Recorded {classification:?} failure for {server_name} in current bucket.").await
22}