api,bearer: add 'attempts' and 'failed-attempts' statistics
When we're reusing over and over the same bearer object, we can provide statistical information about the number of connection attempts that have been done and how many of them failed.
This commit is contained in:
+13
-3
@@ -248,6 +248,8 @@ print_bearer_info (MMBearer *bearer)
|
||||
gchar *duration = NULL;
|
||||
gchar *bytes_rx = NULL;
|
||||
gchar *bytes_tx = NULL;
|
||||
gchar *attempts = NULL;
|
||||
gchar *failed_attempts = NULL;
|
||||
|
||||
if (stats) {
|
||||
guint64 val;
|
||||
@@ -261,11 +263,19 @@ print_bearer_info (MMBearer *bearer)
|
||||
val = mm_bearer_stats_get_tx_bytes (stats);
|
||||
if (val)
|
||||
bytes_tx = g_strdup_printf ("%" G_GUINT64_FORMAT, val);
|
||||
val = mm_bearer_stats_get_attempts (stats);
|
||||
if (val)
|
||||
attempts = g_strdup_printf ("%" G_GUINT64_FORMAT, val);
|
||||
val = mm_bearer_stats_get_failed_attempts (stats);
|
||||
if (val)
|
||||
failed_attempts = g_strdup_printf ("%" G_GUINT64_FORMAT, val);
|
||||
}
|
||||
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_DURATION, duration);
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_BYTES_RX, bytes_rx);
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_BYTES_TX, bytes_tx);
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_DURATION, duration);
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_BYTES_RX, bytes_rx);
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_BYTES_TX, bytes_tx);
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_ATTEMPTS, attempts);
|
||||
mmcli_output_string_take (MMC_F_BEARER_STATS_FAILED_ATTEMPTS, failed_attempts);
|
||||
}
|
||||
|
||||
mmcli_output_dump ();
|
||||
|
||||
@@ -226,6 +226,8 @@ static FieldInfo field_infos[] = {
|
||||
[MMC_F_BEARER_STATS_DURATION] = { "bearer.stats.duration", "duration", MMC_S_BEARER_STATS, },
|
||||
[MMC_F_BEARER_STATS_BYTES_RX] = { "bearer.stats.bytes-rx", "bytes rx", MMC_S_BEARER_STATS, },
|
||||
[MMC_F_BEARER_STATS_BYTES_TX] = { "bearer.stats.bytes-tx", "bytes tx", MMC_S_BEARER_STATS, },
|
||||
[MMC_F_BEARER_STATS_ATTEMPTS] = { "bearer.stats.attempts", "attempts", MMC_S_BEARER_STATS, },
|
||||
[MMC_F_BEARER_STATS_FAILED_ATTEMPTS] = { "bearer.stats.failed-attempts", "attempts", MMC_S_BEARER_STATS, },
|
||||
[MMC_F_CALL_GENERAL_DBUS_PATH] = { "call.dbus-path", "dbus path", MMC_S_CALL_GENERAL, },
|
||||
[MMC_F_CALL_PROPERTIES_NUMBER] = { "call.properties.number", "number", MMC_S_CALL_PROPERTIES, },
|
||||
[MMC_F_CALL_PROPERTIES_DIRECTION] = { "call.properties.direction", "direction", MMC_S_CALL_PROPERTIES, },
|
||||
|
||||
@@ -243,6 +243,8 @@ typedef enum {
|
||||
MMC_F_BEARER_STATS_DURATION,
|
||||
MMC_F_BEARER_STATS_BYTES_RX,
|
||||
MMC_F_BEARER_STATS_BYTES_TX,
|
||||
MMC_F_BEARER_STATS_ATTEMPTS,
|
||||
MMC_F_BEARER_STATS_FAILED_ATTEMPTS,
|
||||
MMC_F_CALL_GENERAL_DBUS_PATH,
|
||||
MMC_F_CALL_PROPERTIES_NUMBER,
|
||||
MMC_F_CALL_PROPERTIES_DIRECTION,
|
||||
|
||||
Reference in New Issue
Block a user