<%! /* */ struct icm_info_type { int status; int pid; int ppid; string uptime; string cputime; int trace_level; int trace_lvl; int cur_thr; int peak_thr; int max_thr; int total_thr; int cur_conn; int peak_conn; int max_conn; int total_conn; int cur_queue; int peak_queue; int max_queue; int total_queue; }; struct icm_thr_info_type { string status; string rq_type; int rq_count; int conn; int guid; string thr_id; }; /* */ static string get_stat (int status) { switch (status) { case 0: return ("none"); break; case 1: return ("init"); break; case 2: return ("running"); break; case 3: return ("shutdown"); break; case 4: return ("down"); break; case 5: return ("maintenance"); break; default: return ("unknown"); } } %> <% int nr; int rc; string browser, appl; struct icm_info_type icm_info; struct icm_thr_info_type icm_thr_info[]; browser = __icm_get_browser_type(); appl = __icm_get_system_property ("app_name"); __icm_get_info (icm_info); __icm_get_thr_info(icm_thr_info); %> <%=appl%> Monitor <% if (icm_info.ppid != 0) { %> <% } %>
<%=appl%> Monitor   Refresh
Status: <%=get_stat(icm_info.status)%> <% if (icm_info.status == 2) { %> green <% } else { %> yellow <% } %>  
Trace level: <%= icm_info.trace_level %>  
Process Id: <%=icm_info.pid%>  
Elapsed Time / CPU Time: <%=icm_info.uptime%> / <%=icm_info.cputime%>  
Watchdog Process Id: <%=icm_info.ppid%>  
 
  current peak maximum total  
Created Threads: <%= icm_info.cur_thr %> <%= icm_info.peak_thr %> <%= icm_info.max_thr %> <%= icm_info.total_thr %>  
Connections used: <%= icm_info.cur_conn %> <%= icm_info.peak_conn %> <%= icm_info.max_conn %> <%= icm_info.total_conn %>  
Queue entries used: <%= icm_info.cur_queue %> <%= icm_info.peak_queue %> <%= icm_info.max_queue %> <%= icm_info.total_queue %>  
<% for (nr = 0; nr < icm_info.cur_thr; nr++) { %> <% } %>
No. Thread ID No. of Requests Status Request Type
<%= nr %> <%= icm_thr_info[nr].thr_id %> <%= icm_thr_info[nr].rq_count %> <%= icm_thr_info[nr].status %> <%= icm_thr_info[nr].rq_type %>