stratum_apps/monitoring/
mod.rs1pub mod client;
13pub mod http_server;
14#[cfg(feature = "asic-rs-telemetry")]
15pub mod miner_telemetry;
16pub mod prometheus_metrics;
17pub mod routes;
18pub mod server;
19pub mod snapshot_cache;
20pub mod sv1;
21
22pub use client::{
23 ExtendedChannelInfo, StandardChannelInfo, Sv2ClientInfo, Sv2ClientMetadata,
24 Sv2ClientsMonitoring, Sv2ClientsSummary,
25};
26pub use http_server::{
27 ErrorResponse, HealthResponse, MonitoringServer, RootResponse, ServerChannelsResponse,
28 ServerResponse, Sv1ClientsResponse, Sv2ClientChannelsResponse, Sv2ClientResponse,
29 Sv2ClientsResponse,
30};
31#[cfg(feature = "asic-rs-telemetry")]
32pub use miner_telemetry::{
33 match_discovered_miners_to_downstreams_by_worker_and_port, DiscoveredMiner, MinerTelemetry,
34 MinerTelemetryCollector, MinerTelemetryDownstreamMatches, MinerTelemetryStatus,
35};
36pub use server::{
37 ServerExtendedChannelInfo, ServerInfo, ServerMonitoring, ServerStandardChannelInfo,
38 ServerSummary,
39};
40pub use snapshot_cache::{MonitoringSnapshot, SnapshotCache};
41pub use sv1::{Sv1ClientInfo, Sv1ClientsMonitoring, Sv1ClientsSummary};
42
43use serde::{Deserialize, Serialize};
44use utoipa::ToSchema;
45
46#[derive(Debug, Clone, Serialize, Deserialize, ToSchema)]
55pub struct GlobalInfo {
56 pub server: Option<ServerSummary>,
58 pub sv2_clients: Option<Sv2ClientsSummary>,
61 pub sv1_clients: Option<Sv1ClientsSummary>,
63 pub uptime_secs: u64,
65}