Browse Source

Added "currentstatistics" to json stats.

pull/1012/head
attermann 6 years ago
parent
commit
da3c40e24a
1 changed files with 16 additions and 2 deletions
  1. +16
    -2
      daemon/cli.c

+ 16
- 2
daemon/cli.c View File

@ -1398,17 +1398,31 @@ static void cli_incoming_list_interfaces(str *instr, struct streambuf *replybuff
}
static void cli_incoming_list_jsonstats(str *instr, struct streambuf *replybuffer) {
u_int64_t cur_sessions, num_sessions, min_sess_iv, max_sess_iv;
struct timeval avg, calls_dur_iv;
u_int64_t num_sessions, min_sess_iv, max_sess_iv;
struct request_time offer_iv, answer_iv, delete_iv;
struct requests_ps offers_ps, answers_ps, deletes_ps;
streambuf_printf(replybuffer, "{\"currentstatistics\":{");
rwlock_lock_r(&rtpe_callhash_lock);
cur_sessions = g_hash_table_size(rtpe_callhash);
rwlock_unlock_r(&rtpe_callhash_lock);
streambuf_printf(replybuffer, "\"sessionsown\":"UINT64F",", cur_sessions - atomic64_get(&rtpe_stats.foreign_sessions));
streambuf_printf(replybuffer, "\"sessionsforeign\":"UINT64F",", atomic64_get(&rtpe_stats.foreign_sessions));
streambuf_printf(replybuffer, "\"sessionstotal\":%i,", cur_sessions);
streambuf_printf(replybuffer, "\"packetrate\":%"PRIu64",", atomic64_get(&rtpe_stats.packets));
streambuf_printf(replybuffer, "\"byterate\":%"PRIu64",", atomic64_get(&rtpe_stats.bytes));
streambuf_printf(replybuffer, "\"errorrate\":%"PRIu64"", atomic64_get(&rtpe_stats.errors));
mutex_lock(&rtpe_totalstats.total_average_lock);
avg = rtpe_totalstats.total_average_call_dur;
num_sessions = rtpe_totalstats.total_managed_sess;
mutex_unlock(&rtpe_totalstats.total_average_lock);
streambuf_printf(replybuffer, "{\"totalstatistics\":{");
streambuf_printf(replybuffer, "},\"totalstatistics\":{");
streambuf_printf(replybuffer, "\"uptime\":%llu,", (unsigned long long)time(NULL)-rtpe_totalstats.started);
streambuf_printf(replybuffer, "\"managedsessions\":"UINT64F",", num_sessions);
streambuf_printf(replybuffer, "\"rejectedsessions\":"UINT64F",", atomic64_get(&rtpe_totalstats.total_rejected_sess));


Loading…
Cancel
Save