MINOR: mworker/cli: show programs in 'show proc'
Show the programs in 'show proc'
Example:
# programs
2285 dataplane-api - 0 0d 00h00m12s
# old programs
2261 dataplane-api - 1 0d 00h00m53s
diff --git a/src/mworker.c b/src/mworker.c
index d847ee9..ac5d1a0 100644
--- a/src/mworker.c
+++ b/src/mworker.c
@@ -442,6 +442,38 @@
free(msg);
}
+ /* displays external process */
+ chunk_appendf(&trash, "# programs\n");
+ old = 0;
+ list_for_each_entry(child, &proc_list, list) {
+ up = now.tv_sec - child->timestamp;
+
+ if (child->type != 'e')
+ continue;
+
+ if (child->reloads > 0) {
+ old++;
+ continue;
+ }
+ chunk_appendf(&trash, "%-15u %-15s %-15s %-15d %dd %02dh%02dm%02ds\n", child->pid, child->id, "-", child->reloads, up / 86400, (up % 86400) / 3600, (up % 3600) / 60, (up % 60));
+ }
+
+ if (old) {
+ chunk_appendf(&trash, "# old programs\n");
+ list_for_each_entry(child, &proc_list, list) {
+ up = now.tv_sec - child->timestamp;
+
+ if (child->type != 'e')
+ continue;
+
+ if (child->reloads > 0) {
+ chunk_appendf(&trash, "%-15u %-15s %-15s %-15d %dd %02dh%02dm%02ds\n", child->pid, child->id, "-", child->reloads, up / 86400, (up % 86400) / 3600, (up % 3600) / 60, (up % 60));
+ }
+ }
+ }
+
+
+
if (ci_putchk(si_ic(si), &trash) == -1) {
si_rx_room_blk(si);
return 0;