Module analytics

Module analytics 

Source
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§

AnalyticsCollector
Analytics collector for the local node.
AnalyticsConfig
Analytics configuration.
ContentAccess
Content access information.
ContentAnalytics
Content analytics data.
ContentEarning
Content earning information.
DashboardAnalytics
Combined dashboard analytics.
EarningAnalytics
Earning analytics data.
HistoricalData
Historical data for charts.
PerformanceAnalytics
Performance analytics data.
StorageAnalytics
Storage analytics data.
TimeSeriesPoint
Time-series data point.
TransferAnalytics
Transfer analytics data.