Commit 95d8f769 authored by Geoff Simmons's avatar Geoff Simmons

trackrdrd: add global worker restart count to monitoring stats

parent 99acc01c
...@@ -63,6 +63,7 @@ log_output(void) ...@@ -63,6 +63,7 @@ log_output(void)
"sent=%u " "sent=%u "
"reconnects=%u " "reconnects=%u "
"failed=%u " "failed=%u "
"restarts=%u "
"occ_hi=%u " "occ_hi=%u "
"occ_hi_this=%u ", "occ_hi_this=%u ",
dtbl.len, dtbl.len,
...@@ -77,6 +78,7 @@ log_output(void) ...@@ -77,6 +78,7 @@ log_output(void)
dtbl.r_stats.sent, dtbl.r_stats.sent,
dtbl.r_stats.reconnects, dtbl.r_stats.reconnects,
dtbl.r_stats.failed, dtbl.r_stats.failed,
dtbl.r_stats.restarts,
dtbl.r_stats.occ_hi, dtbl.r_stats.occ_hi,
dtbl.r_stats.occ_hi_this dtbl.r_stats.occ_hi_this
); );
...@@ -192,6 +194,10 @@ MON_StatsUpdate(stats_update_t update) ...@@ -192,6 +194,10 @@ MON_StatsUpdate(stats_update_t update)
dtbl.w_stats.nodata++; dtbl.w_stats.nodata++;
dtbl.r_stats.done--; dtbl.r_stats.done--;
break; break;
case STATS_RESTART:
dtbl.r_stats.restarts++;
break;
default: default:
/* Unreachable */ /* Unreachable */
......
...@@ -144,7 +144,8 @@ struct data_reader_stats_s { ...@@ -144,7 +144,8 @@ struct data_reader_stats_s {
unsigned open; unsigned open;
unsigned sent; /* Sent successfully to MQ */ unsigned sent; /* Sent successfully to MQ */
unsigned failed; /* MQ send fails */ unsigned failed; /* MQ send fails */
unsigned reconnects; unsigned reconnects; /* Reconnects to MQ */
unsigned restarts; /* Worker thread restarts */
unsigned occ_hi; /* Occupancy high water mark */ unsigned occ_hi; /* Occupancy high water mark */
unsigned occ_hi_this; /* Occupancy high water mark unsigned occ_hi_this; /* Occupancy high water mark
this reporting interval*/ this reporting interval*/
...@@ -346,6 +347,8 @@ typedef enum { ...@@ -346,6 +347,8 @@ typedef enum {
STATS_OCCUPANCY, STATS_OCCUPANCY,
/* ReqEnd seen, no data in the record */ /* ReqEnd seen, no data in the record */
STATS_NODATA, STATS_NODATA,
/* Worker thread restarted */
STATS_RESTART,
} stats_update_t; } stats_update_t;
void *MON_StatusThread(void *arg); void *MON_StatusThread(void *arg);
......
...@@ -359,6 +359,7 @@ WRK_Restart(void) ...@@ -359,6 +359,7 @@ WRK_Restart(void)
wrk->deqs = wrk->waits = wrk->sends = wrk->fails = wrk->reconnects wrk->deqs = wrk->waits = wrk->sends = wrk->fails = wrk->reconnects
= 0; = 0;
wrk->restarts++; wrk->restarts++;
MON_StatsUpdate(STATS_RESTART);
wrk->state = WRK_NOTSTARTED; wrk->state = WRK_NOTSTARTED;
if (pthread_create(&thread_data[i].worker, NULL, wrk_main, wrk) if (pthread_create(&thread_data[i].worker, NULL, wrk_main, wrk)
!= 0) { != 0) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment