Rust
Health check response with service status information
HealthStatus
pub struct HealthStatus { pub status: String, pub version: String, pub timestamp: String, pub services: Vec<ServiceHealth>, }
use wacht::api::health::check_health; let health = check_health().await?; println!("API Health: {}", health.status); println!("Version: {}", health.version); println!("Checked at: {}", health.timestamp); // Check individual services println!("\nService Status:"); for service in &health.services { println!(" {}: {}", service.name, service.status); if let Some(message) = &service.message { println!(" Message: {}", message); } } // Determine if all services are healthy let all_healthy = health.services.iter() .all(|s| s.status == "healthy"); if !all_healthy { println!("\nWarning: Some services are not healthy!"); // Find unhealthy services let unhealthy_services: Vec<&ServiceHealth> = health.services.iter() .filter(|s| s.status != "healthy") .collect(); for service in unhealthy_services { println!(" - {} is {}", service.name, service.status); } } // Simple health check match health.status.as_str() { "healthy" => println!("✅ All systems operational"), "degraded" => println!("⚠️ Some services degraded"), "unhealthy" => println!("❌ System unhealthy"), _ => println!("Unknown status: {}", health.status), }