<%! struct server_spec_type { int max_conn; int cur_conn; int peak_conn; }; struct server_spec_stack { int req_no_total_stateless; int req_no_total_group; int req_no_total_stateful; int req_no_act_stateless[16]; int req_no_act_group[16]; int req_no_act_stateful[16]; string req_no_timesection[16]; string req_per_min_stateless[16]; string req_per_min_group[16]; string req_per_min_stateful[16]; int resp_time_last; int resp_time_avg; int resp_time_min; int ping_time_last; boolean operational; boolean valid; boolean active; boolean responding; int capacity; boolean capacity_is_fixed; int load; int load_static; }; struct wdisp_host_info_type { string name; string host_name; string http_port; string https_port; string error_text; boolean has_abap; boolean has_j2ee; struct server_spec_stack stack[2]; struct server_spec_type http; struct server_spec_type https; }; %> <% int host_count, refresh_rate, nr, i; int tabsel; string what, browser, group, str, cap, ping_url, groupnam[]; string iconname[3]; struct wdisp_host_info_type wdisp_host_info[]; string token_save_cap, token_unlock_cap; string token, lastControlID; int rc, test; string msg, msg_ok, msg_error, isExtern; string icon,systemID,systemID_show, tabsel_str; string alt_ping_abap_url, alt_ping_j2ee_url, tmpString; boolean show_stat_details; show_stat_details = __icm_get_form_field ("show_stat_details"); what = anumenc(__icm_get_form_field ("what")); lastControlID = htmlenc(__icm_get_form_field ("lastControlID")); systemID = htmlenc(__icm_get_form_field ("systemID")); if (systemID != "000") { systemID_show = " (" + systemID + ")"; } isExtern = __wdisp_is_extern_sid(systemID); alt_ping_abap_url = "/sap/public/icman/ping"; tmpString = __icm_get_param ("wdisp/ping_abap_url"); if (tmpString != "") { alt_ping_abap_url = tmpString; } alt_ping_j2ee_url = "/favicon.ico"; tmpString = __icm_get_param ("wdisp/ping_java_url"); if (tmpString != "") { alt_ping_j2ee_url = tmpString; } browser = __icm_get_browser_type(); host_count = __wdisp_get_host_info (group, wdisp_host_info, systemID); tabsel_str = __icm_get_form_field ("tabsel"); if (tabsel_str == "") { tabsel = 1; for (nr = 0; nr < host_count; nr++) { if (wdisp_host_info[nr].has_abap) { tabsel = 0; } } } else { tabsel = anumenc(__icm_get_form_field ("tabsel")); } if ((tabsel < 0) || (tabsel > 1)) tabsel = 0; if (tabsel == 0) ping_url = alt_ping_abap_url; else ping_url = alt_ping_j2ee_url; if (isExtern == "true") { ping_url = __icm_get_param ("wdisp/ping_extsrv_url"); } if (what == "refresh") { refresh_rate = __icm_get_form_field ("p1"); if (refresh_rate == 10) iconname[0] = "../public/icons/s_s_okay.gif"; else iconname[1] = "../public/icons/s_s_okay.gif"; } else iconname[2] = "../public/icons/s_s_okay.gif"; %> Web Dispatcher Monitor <% if (refresh_rate > 0){ %> <% } %> <% group = "!ALL"; groupnam[0] = "ABAP"; groupnam[1] = "JAVA"; if (isExtern == "true") { groupnam[1] = "EXTERN"; } for (nr=0; nr<3;nr++){ iconname[nr] = "../public/icons/s_s_space.gif"; } if (what == "save_cap" || what == "unlock_cap") { if (what == "save_cap") { token = __icm_get_form_field("token"); for (nr = 0; nr < host_count; nr++) { str = "edit_cap" + wdisp_host_info[nr].name; cap = anumenc(__icm_get_form_field (str)); if (cap != "" && wdisp_host_info[nr].stack[tabsel].capacity != cap) { if (tabsel == 0) rc = __wdisp_hdl (6, wdisp_host_info[nr].name, cap, wdisp_host_info[nr].stack[1].capacity, token, systemID); else rc = __wdisp_hdl (6, wdisp_host_info[nr].name, wdisp_host_info[nr].stack[0].capacity, cap, token, systemID); } } msg_ok = "Capacities saved."; msg_error = "Error saving capacities"; host_count = __wdisp_get_host_info (group, wdisp_host_info, systemID); } else if (what == "unlock_cap") { token = __icm_get_form_field("token"); rc = __wdisp_hdl (9, token, systemID); msg_ok = "Capacities unlocked."; msg_error = "Error unlocking capacities"; host_count = __wdisp_get_host_info (group, wdisp_host_info, systemID); } if (rc == 0) { msg = msg_ok; icon = "s_m_info.gif"; } else if (rc == -11) { msg = "Session timeout. Please retry operation."; icon = "s_m_warn.gif"; } else { msg = msg_error + ": " + __icm_get_error_text(rc) + " (" + rc + ")"; icon = "s_m_erro.gif"; } %>
Information
 
 
<%=msg%>
 
 
Back

<% } else { for (nr = 0; nr

<% if (wdisp_host_info[nr].stack[tabsel].active && wdisp_host_info[nr].stack[tabsel].operational) { %>
Deactivate Server (<%=groupnam[tabsel]%>)
<% } else { %>
Activate Server (<%=groupnam[tabsel]%>)
<% } if (isExtern != "true") { %>
Activate Server (all stacks)
Deactivate Server (all stacks)
<% } %>
Direct HTTP ping to server
Direct HTTPS ping to server

Close menu
<% if (!wdisp_host_info[nr].stack[tabsel].active){ __output(""); wdisp_host_info[nr].error_text = "Server was manually deactivated"; } if (!wdisp_host_info[nr].stack[tabsel].valid && wdisp_host_info[nr].stack[tabsel].active){ __output(""); wdisp_host_info[nr].error_text = "Server is not reachable"; } if (!wdisp_host_info[nr].stack[tabsel].responding && wdisp_host_info[nr].stack[tabsel].valid){ __output(""); wdisp_host_info[nr].error_text = "Server is not responding to ping requests"; } %>
"); __output ("Server was manually deactivated"); __output("
"); __output ("Server is not reachable"); __output("
"); __output ("Server is not responding to ping requests"); __output("
<% } %>
Reset peak values

Close Menu
Reset peak values

Close menu
Reset request count

Close menu
<% if (what == "edit_cap") { token_save_cap = __icm_get_token(506); %>
Save capacity values
Revert changes
<% } else { token_unlock_cap = __icm_get_token(509); %>
Edit capacity values
Unlock capacity values
<% } %>
Close menu
">Auto refresh (10sec)
">Auto refresh (30sec)
">Auto refresh off

Close Menu
<% if (isExtern == "true") { %> External System<%=systemID_show%> <% } else { %> Application Server Monitor<%=systemID_show%> <% } %> Reload Web Dispatcher configuration Refresh

<% if (isExtern == "false") { for (nr = 0; nr<2; nr++) { %> <% } } %>
class="sapTbsTabSel"> <%=groupnam[nr]%> <% } else { %> class="sapTbsTab"> <%=groupnam[nr]%> <% } %>
 
<% if (isExtern == "false") { %> <% } else { %> <% } %> <% for (nr = 0; nr < host_count; nr++) { if (((tabsel == 0) && wdisp_host_info[nr].has_abap) || ((tabsel == 1) && wdisp_host_info[nr].has_j2ee)) { %> <% if (what == "edit_cap") { %> <% } else { %> <% } %> <% } } %>
List of <%=groupnam[tabsel]%> Hosts List of external Hosts
Nr. Valid Name Hostname HTTP connections  HTTPS connections  Requests  Capacity  Load Response times (us) Last ping time (us)
<%= nr %> <% if (wdisp_host_info[nr].stack[tabsel].operational) __output ("\"OK\""); else { __output (""); __output ("\"","); __output (""); } %> <%= wdisp_host_info[nr].name %>   <%= wdisp_host_info[nr].host_name %>
Port <%=wdisp_host_info[nr].http_port%>
max <%=wdisp_host_info[nr].http.max_conn%>
current <%=wdisp_host_info[nr].http.cur_conn%>
peak <%=wdisp_host_info[nr].http.peak_conn%>
Port <%=wdisp_host_info[nr].https_port%>
max <%=wdisp_host_info[nr].https.max_conn%>
current <%=wdisp_host_info[nr].https.cur_conn%>
peak <%=wdisp_host_info[nr].https.peak_conn%>
Stateless <%=wdisp_host_info[nr].stack[tabsel].req_no_total_stateless%>
For Group <%=wdisp_host_info[nr].stack[tabsel].req_no_total_group%>
Stateful <%=wdisp_host_info[nr].stack[tabsel].req_no_total_stateful%>
<%= wdisp_host_info[nr].stack[tabsel].capacity%> <% if (wdisp_host_info[nr].stack[tabsel].capacity_is_fixed) __output("\"value"); %> <%= wdisp_host_info[nr].stack[tabsel].load %>
Last <%= wdisp_host_info[nr].stack[tabsel].resp_time_last %>
Avg <%= wdisp_host_info[nr].stack[tabsel].resp_time_avg %>
Min <%= wdisp_host_info[nr].stack[tabsel].resp_time_min %>
<%= wdisp_host_info[nr].stack[tabsel].ping_time_last %>
<% } %>
<% if (show_stat_details == 0) { %> Show Request History <% } else { %> Hide Request History

<% for (nr = 0; nr < host_count; nr++) { %> <% for (i = 0; i<16; i++) { %> <% } %> <% for (i = 0; i<16; i++) { %> <% } %> <% for (i = 0; i<16; i++) { %> <% } %> <% for (i = 0; i<16; i++) { %> <% } %> <% for (i = 0; i<16; i++) { %> <% } %> <% for (i = 0; i<16; i++) { %> <% } %> <% for (i = 0; i<16; i++) { %> <% } %>
<%= wdisp_host_info[nr].name %> Timeframes
 <%=wdisp_host_info[nr].stack[tabsel].req_no_timesection[i]%>
Stateless total<%=wdisp_host_info[nr].stack[tabsel].req_no_act_stateless[i]%>
Req/min<%=wdisp_host_info[nr].stack[tabsel].req_per_min_stateless[i]%>
For Group total<%=wdisp_host_info[nr].stack[tabsel].req_no_act_group[i]%>
Req/min<%=wdisp_host_info[nr].stack[tabsel].req_per_min_group[i]%>
Stateful total<%=wdisp_host_info[nr].stack[tabsel].req_no_act_stateful[i]%>
Req/min<%=wdisp_host_info[nr].stack[tabsel].req_per_min_stateful[i]%>
  <% } } %>