network-monitor/Cargo.toml
Ivan Li 2a9e34d345
All checks were successful
Gitea Actions Demo / build (push) Successful in 4m54s
feat: implement robust retry mechanism for API aggregation service
- Add unified retry strategy with exponential backoff and jitter
- Implement health monitoring system for service status tracking
- Enhance WebSocket connection with timeout and heartbeat detection
- Improve WAN polling with connection timeout and error handling
- Add comprehensive test suite for retry mechanisms
- Fix connection hanging issues that prevented proper retry recovery

Key improvements:
- RetryConfig with fast/slow/infinite retry strategies
- HealthMonitor for real-time service status tracking
- Connection timeouts to prevent hanging
- Automatic ping/pong handling for WebSocket
- Consecutive error counting and thresholds
- Detailed logging for better diagnostics

All tests passing: 11 tests (3 unit + 5 integration + 3 lib tests)
2025-06-30 16:49:34 +08:00

24 lines
690 B
TOML

[package]
edition = "2021"
name = "network-monitor"
version = "0.1.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
anyhow = "1.0.93"
clap = {version = "4.5.21", features = ["derive", "env"]}
dotenvy = { version = "0.15.7", features = ["clap", "cli"] }
env_logger = "0.11.5"
futures-util = "0.3.31"
http-body-util = "0.1"
hyper = {version = "1.5.0", features = ["full"]}
hyper-util = {version = "0.1", features = ["full"]}
log = "0.4.22"
rand = "0.8.5"
serde = {version = "1.0.215", features = ["derive"]}
serde_json = "1.0.133"
tokio = {version = "1.41.1", features = ["full"]}
tokio-tungstenite = "0.24.0"
url = "2.5.3"