Expand description
Local analytics for CHIE node dashboard.
This module provides comprehensive analytics data for the desktop client:
- Storage metrics (used/free space, chunk counts)
- Transfer statistics (bandwidth, history)
- Earning analytics (rewards, content performance)
- Content metrics (popularity, access patterns)
- Performance data (latency, uptime)
§Examples
use chie_core::analytics::{AnalyticsCollector, AnalyticsConfig};
use chie_core::ChunkStorage;
use std::sync::{Arc, RwLock};
use std::path::PathBuf;
let storage = Arc::new(RwLock::new(
ChunkStorage::new(PathBuf::from("/tmp/test"), 1024 * 1024).await?
));
let config = AnalyticsConfig::default();
let collector = AnalyticsCollector::new(storage, config);
// Record upload
collector.record_upload(1024 * 1024, true);
// Record earnings (amount in u64)
collector.record_earning(100, Some("QmContent123"));
// Get analytics snapshots
let transfer_analytics = collector.transfer_analytics();
let earning_analytics = collector.earning_analytics();
println!("Total uploaded: {} bytes", transfer_analytics.total_uploaded);
println!("Total earned: {} points", earning_analytics.total_earned);Structs§
- Analytics
Collector - Analytics collector for the local node.
- Analytics
Config - Analytics configuration.
- Content
Access - Content access information.
- Content
Analytics - Content analytics data.
- Content
Earning - Content earning information.
- Dashboard
Analytics - Combined dashboard analytics.
- Earning
Analytics - Earning analytics data.
- Historical
Data - Historical data for charts.
- Performance
Analytics - Performance analytics data.
- Storage
Analytics - Storage analytics data.
- Time
Series Point - Time-series data point.
- Transfer
Analytics - Transfer analytics data.