tuwunel_admin/debug/task_metrics.rs
1use tuwunel_core::{Result, tokio_metrics::TaskMonitor};
2
3use crate::admin_command;
4
5#[admin_command]
6pub(super) async fn task_metrics(&self) -> Result {
7 let out = self
8 .services
9 .server
10 .metrics
11 .task_metrics()
12 .map(TaskMonitor::cumulative)
13 .map_or_else(
14 || "Task metrics are not available.".to_owned(),
15 |metrics| format!("```rs\n{metrics:#?}\n```"),
16 );
17
18 self.write_str(&out).await
19}