Skip to content

Commit 694e75d

Browse files
alvasMancodebot
authored andcommitted
metrics: make sure brate is in kbps
1 parent 3587af1 commit 694e75d

File tree

4 files changed

+29
-2
lines changed

4 files changed

+29
-2
lines changed

apps/services/metrics_log_helper.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ void metrics_log_helper::report_metrics(const rlc_metrics& metrics)
207207
fmt::format_to(buffer, " du_index={}", metrics.du_index);
208208
fmt::format_to(buffer, " ue_index={}", metrics.ue_index);
209209
fmt::format_to(buffer, " rb_id={}", metrics.rb_id);
210-
fmt::format_to(buffer, " TX=[{}]", metrics.tx);
210+
fmt::format_to(buffer, " TX=[{}]", format_rlc_tx_metrics(metrics.metrics_period, metrics.tx));
211211
fmt::format_to(buffer, " RX=[{}] ", metrics.rx);
212212
logger.debug("{}", to_c_str(buffer));
213213
}

include/srsran/rlc/rlc_metrics.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ struct rlc_metrics {
2525
rlc_tx_metrics tx;
2626
rlc_rx_metrics rx;
2727
unsigned counter;
28+
timer_duration metrics_period;
2829
};
2930

3031
/// \brief Notifier interface used to report RLC metrics.

include/srsran/rlc/rlc_tx_metrics.h

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#pragma once
1212

1313
#include "srsran/rlc/rlc_config.h"
14+
#include "srsran/support/format_utils.h"
1415
#include "fmt/format.h"
1516

1617
namespace srsran {
@@ -75,6 +76,30 @@ class rlc_tx_metrics_interface
7576
virtual rlc_tx_metrics get_and_reset_metrics() = 0;
7677
virtual void reset_metrics() = 0;
7778
};
79+
80+
inline std::string format_rlc_tx_metrics(timer_duration metrics_period, const rlc_tx_metrics& m)
81+
{
82+
fmt::memory_buffer buffer;
83+
fmt::format_to(
84+
buffer,
85+
"period={}ms num_sdus={} sdu_rate={}kbps, dropped_sdus={} discarded_sdus={} "
86+
"num_pdus_no_segm={} pdu_rate_no_segm={}kbps num_pdus_with_segm={} pdu_rate_with_segm={}kbps num_retx={} "
87+
"retx_rate={}kbps ctrl_pdus={} ctrl_rate={}kbps avg_pdu_latency={}",
88+
metrics_period.count(),
89+
m.num_sdus,
90+
(double)m.num_sdu_bytes * 8 / (double)metrics_period.count(),
91+
m.num_dropped_sdus,
92+
m.num_discarded_sdus,
93+
m.num_pdus_no_segmentation,
94+
(double)m.num_pdu_bytes_no_segmentation * 8 / (double)metrics_period.count(),
95+
m.mode_specific.am.num_pdus_with_segmentation,
96+
(double)m.mode_specific.am.num_pdu_bytes_with_segmentation * 8 / (double)metrics_period.count(),
97+
m.mode_specific.am.num_retx_pdus,
98+
(double)m.mode_specific.am.num_retx_pdu_bytes * 8 / (double)metrics_period.count(),
99+
m.mode_specific.am.num_ctrl_pdus,
100+
(double)m.mode_specific.am.num_ctrl_pdu_bytes * 8 / (double)metrics_period.count());
101+
return to_c_str(buffer);
102+
}
78103
} // namespace srsran
79104

80105
namespace fmt {

lib/rlc/rlc_base_entity.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,8 @@ class rlc_base_entity : public rlc_entity
101101

102102
void push_metrics()
103103
{
104-
rlc_metrics m = get_metrics();
104+
rlc_metrics m = get_metrics();
105+
m.metrics_period = metrics_period;
105106
if (rlc_metrics_notif) {
106107
rlc_metrics_notif->report_metrics(m);
107108
}

0 commit comments

Comments
 (0)