Skip to content

Commit 5dfeb35

Browse files
Add message stats to Overview
1 parent 0ea7cf9 commit 5dfeb35

File tree

2 files changed

+45
-1
lines changed

2 files changed

+45
-1
lines changed

src/formatting.rs

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ impl Display for QueueTotals {
3939
writeln!(f, "all messages: {}", self.messages)?;
4040
writeln!(
4141
f,
42-
"messages ready for dlievery: {}",
42+
"messages ready for delivery: {}",
4343
self.messages_ready_for_delivery
4444
)?;
4545
writeln!(
@@ -52,6 +52,23 @@ impl Display for QueueTotals {
5252
}
5353
}
5454

55+
impl Display for MessageStats {
56+
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
57+
writeln!(
58+
f,
59+
"publishing (ingress) rate: {}",
60+
self.publishing_details.rate
61+
)?;
62+
writeln!(
63+
f,
64+
"delivery plus polling (egress) rate: {}",
65+
self.delivery_details.rate
66+
)?;
67+
68+
Ok(())
69+
}
70+
}
71+
5572
impl Display for TagList {
5673
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
5774
fmt_comma_separated_list(f, &self.0)

src/responses.rs

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1011,6 +1011,31 @@ pub struct QueueTotals {
10111011
pub messages_delivered_but_unacknowledged_by_consumers_details: Rate,
10121012
}
10131013

1014+
#[derive(Debug, Deserialize, Clone, PartialEq)]
1015+
#[cfg_attr(feature = "tabled", derive(Tabled))]
1016+
pub struct MessageStats {
1017+
/// Consumder delivery rate plus polling (via 'basic.get') rate
1018+
#[serde(rename = "deliver_get_details")]
1019+
pub delivery_details: Rate,
1020+
#[serde(rename = "publish_details")]
1021+
pub publishing_details: Rate,
1022+
1023+
#[serde(rename = "deliver_no_ack_details")]
1024+
pub delivery_with_automatic_acknowledgement_details: Rate,
1025+
#[serde(rename = "redeliver_details")]
1026+
pub redelivery_details: Rate,
1027+
1028+
#[serde(rename = "confirm_details")]
1029+
pub publisher_confirmation_details: Rate,
1030+
#[serde(rename = "ack_details")]
1031+
pub consumer_acknowledgement_details: Rate,
1032+
1033+
#[serde(rename = "drop_unroutable_details")]
1034+
pub unroutable_dropped_message_details: Rate,
1035+
#[serde(rename = "return_unroutable_details")]
1036+
pub unroutable_returned_message_details: Rate,
1037+
}
1038+
10141039
#[derive(Debug, Deserialize, Clone, Eq, PartialEq)]
10151040
#[cfg_attr(feature = "tabled", derive(Tabled))]
10161041
pub struct Listener {
@@ -1045,8 +1070,10 @@ pub struct Overview {
10451070

10461071
pub statistics_db_event_queue: u64,
10471072
pub churn_rates: ChurnRates,
1073+
10481074
pub queue_totals: QueueTotals,
10491075
pub object_totals: ObjectTotals,
1076+
pub message_stats: MessageStats,
10501077
}
10511078

10521079
#[derive(Serialize, Deserialize, Debug, PartialEq, Eq, Clone)]

0 commit comments

Comments
 (0)