Bring back status bar data (in side panel)

This commit is contained in:
Mike Dilger 2023-08-19 12:37:42 +12:00
parent ad91fcb35f
commit d6be00d3e5
2 changed files with 32 additions and 22 deletions

View File

@ -617,28 +617,6 @@ impl eframe::App for GossipUi {
relays::entry_dialog(ctx, self);
}
if self.settings.status_bar {
egui::TopBottomPanel::top("stats-bar").frame(egui::Frame::side_top_panel(&self.settings.theme.get_style()).inner_margin(egui::Margin { left: 0.0, right: 0.0, top: 0.0, bottom: 0.0 })).show(ctx, |ui| {
ui.with_layout(egui::Layout::right_to_left(egui::Align::BOTTOM), |ui| {
let in_flight = GLOBALS.fetcher.requests_in_flight();
let queued = GLOBALS.fetcher.requests_queued();
let events = GLOBALS.storage.get_event_len().unwrap_or(0);
let relays = GLOBALS.connected_relays.len();
let processed = GLOBALS.events_processed.load(Ordering::Relaxed);
let subs = GLOBALS.open_subscriptions.load(Ordering::Relaxed);
let stats_message = format!("EVENTS PROCESSED={} STORED={} RELAYS CONNS={} SUBS={} HTTP: {} / {}", processed, events, relays, subs, in_flight, in_flight + queued);
let stats_message = RichText::new(stats_message).color(self.settings.theme.notice_marker_text_color());
ui.add(Label::new(stats_message)).on_hover_text(
"events processed: number of events relays have sent to us, including duplicates.\n\
events stored: number of unique events in storage\n\
relay conns: number of relays currently connected\n\
relay subs: number of subscriptions that have not come to EOSE yet\n\
http: number of fetches in flight / number of requests queued",
);
});
});
}
egui::SidePanel::left("main-naviation-panel")
.show_separator_line(false)
.frame(
@ -758,6 +736,32 @@ impl eframe::App for GossipUi {
if ui.add(Label::new(RichText::new(&messages[2]).weak().small()).sense(Sense::click())).clicked() {
GLOBALS.status_queue.write().dismiss(2);
}
ui.add_space(30.0);
// -- DEBUG status area
if self.settings.status_bar {
let in_flight = GLOBALS.fetcher.requests_in_flight();
let queued = GLOBALS.fetcher.requests_queued();
let m = format!("HTTP: {} / {}", in_flight, queued);
ui.add(Label::new(RichText::new(m).color(self.settings.theme.notice_marker_text_color())));
let subs = GLOBALS.open_subscriptions.load(Ordering::Relaxed);
let m = format!("RELAY SUBSC {}", subs);
ui.add(Label::new(RichText::new(m).color(self.settings.theme.notice_marker_text_color())));
let relays = GLOBALS.connected_relays.len();
let m = format!("RELAYS CONN {}", relays);
ui.add(Label::new(RichText::new(m).color(self.settings.theme.notice_marker_text_color())));
let events = GLOBALS.storage.get_event_len().unwrap_or(0);
let m = format!("EVENTS STOR {}", events);
ui.add(Label::new(RichText::new(m).color(self.settings.theme.notice_marker_text_color())));
let processed = GLOBALS.events_processed.load(Ordering::Relaxed);
let m = format!("EVENTS RECV {}", processed);
ui.add(Label::new(RichText::new(m).color(self.settings.theme.notice_marker_text_color())));
}
});
// ---- "plus icon" ----

View File

@ -69,4 +69,10 @@ pub(super) fn update(app: &mut GossipUi, ctx: &Context, _frame: &mut eframe::Fra
ui.label("Maximum FPS: ").on_hover_text("The UI redraws every frame. By limiting the maximum FPS you can reduce load on your CPU. Takes effect immediately. I recommend 10, maybe even less.");
ui.add(Slider::new(&mut app.settings.max_fps, 2..=60).text("Frames per second"));
});
ui.add_space(20.0);
ui.checkbox(
&mut app.settings.status_bar,
"Show DEBUG statistics in sidebar",
);
}