From 63fec39fb26281dae03b4b29eb1d31d326d05ecb Mon Sep 17 00:00:00 2001 From: Lars Francke Date: Mon, 30 Mar 2026 15:24:02 +0200 Subject: [PATCH] feat: Report open file descriptor count Read /proc/self/fd to report the actual number of open file descriptors alongside the existing limit. Comparing usage vs limit helps diagnose "too many open files" errors. --- src/system_information/resources.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/system_information/resources.rs b/src/system_information/resources.rs index 493fabf..f5f512c 100644 --- a/src/system_information/resources.rs +++ b/src/system_information/resources.rs @@ -7,6 +7,7 @@ pub struct Resources { pub physical_core_count: Option, pub open_files_limit: Option, + pub open_files_count: Option, pub total_memory: u64, pub free_memory: u64, @@ -43,7 +44,14 @@ impl Resources { ); let open_files_limit = System::open_files_limit(); - tracing::info!(open_files.limit = open_files_limit, "open files limit"); + let open_files_count = std::fs::read_dir("/proc/self/fd") + .map(|entries| entries.count()) + .ok(); + tracing::info!( + open_files.limit = open_files_limit, + open_files.count = open_files_count, + "open files" + ); let total_memory = sys.total_memory(); let free_memory = sys.free_memory(); @@ -91,6 +99,7 @@ impl Resources { physical_core_count, open_files_limit, + open_files_count, total_memory, free_memory,