<%@ page import="java.io.*"%> <%@ page language="java" contentType="text/html; charset=utf-8"%> <%@ page import="com.eactive.eai.adapter.socket2.config.SocketAdapterManager"%> <%@ page import="com.eactive.eai.common.session.SessionManager,com.eactive.eai.common.session.TerminalVO"%> <%@ page import="com.eactive.eai.common.session.CacheInfoVO"%> <%@ page import="java.util.*"%> <%@ page import="org.apache.mina.common.IoSession"%> <%@ page import="java.util.concurrent.ConcurrentMap"%> <%@ page import="java.util.concurrent.ConcurrentHashMap"%> <%@ page import="net.sf.ehcache.Cache"%> <%@ page import="net.sf.ehcache.Cache,net.sf.ehcache.Element"%> <%@ page import="com.eactive.eai.adapter.socket2.common.ExpiringMap"%> <%@ page import="com.eactive.eai.common.util.DatetimeUtil"%> <%@ page import="com.eactive.eai.common.server.EAIServerManager"%> <%@ page import="com.eactive.eai.adapter.socket2.config.SocketAdapterManager"%> <%@ page import="com.eactive.eai.adapter.socket2.protocol.ISocketAdapter"%> <%@ page import="org.apache.mina.common.IoSession"%> <%@ page import="net.sf.ehcache.Cache,net.sf.ehcache.Element"%> <%@ page import="net.sf.ehcache.Cache"%> <%@ page import="com.eactive.eai.adapter.socket2.common.ExpiringMap"%> <%@ page import="com.eactive.eai.adapter.socket2.common.TimeUtil"%> <%@ page import="com.eactive.eai.common.server.EAIServerManager"%> Socket Terminal Monitoring

[ Socket Terminal Monitoring ]

<% String eaiSvrInstNm = EAIServerManager.getInstance().getLocalServerName(); String terminalNo = request.getParameter("terminalNo"); boolean isSpUserFound = false; String spUuid = null; try { if(terminalNo == null) { terminalNo = ""; } else { terminalNo = terminalNo.trim(); if(terminalNo.length() > 0) isSpUserFound = true; } SessionManager sessionManager = SessionManager.getInstance(); %>
  • WAS Instance name : <%=eaiSvrInstNm %>
  • Current DateTime : <%=DatetimeUtil.getTimeStampString() %>
  • Search parameter : terminalNo

    Adapter Socket (Local)

    <% ConcurrentMap> adapterGroups = SocketAdapterManager.getInstance().getSocketAdapterGroups(); for (String adapterGroupName : adapterGroups.keySet()) { ConcurrentHashMap adapters = (ConcurrentHashMap) adapterGroups.get(adapterGroupName); for (Enumeration ee = adapters.elements() ; ee.hasMoreElements() ;) { ISocketAdapter adapter = (ISocketAdapter) ee.nextElement(); if (!"XC3EPB".equals(adapter.getContext().getProtocol())){ break; } for (Iterator iii = adapter.getSessionPool().iterator() ; iii.hasNext(); ) { IoSession session1 = (IoSession) iii.next(); TerminalVO vo = (TerminalVO)session1.getAttribute("TERMINAL_KEY"); %> <% if(isSpUserFound && vo != null && vo.getTerminalNo().equals(terminalNo) ) { %> <% } else { %> <% } } } } CacheInfoVO cacheInfo = sessionManager.getTerminalCache(); String cacheName = cacheInfo.getName(); String cacheSize = String.valueOf(cacheInfo.getSize()); String cacheTime = String.valueOf(cacheInfo.getTimeToLiveSeconds()); %>
    eaiSvrInstNm adapterGroupName terminalNo localSocketAddress remoteSocketAddress createTime idleTime
    <%= eaiSvrInstNm %> <%= adapterGroupName %> <%= vo.getTerminalNo() %> <%= session1.getLocalAddress() %> <%= session1.getRemoteAddress() %> <%= TimeUtil.formatDate(session1.getCreationTime()) %> <%= TimeUtil.elapsedTime(session1.getLastIoTime()) %>
    <%= eaiSvrInstNm %> <%= adapterGroupName %> <%= vo.getTerminalNo() %> <%= session1.getLocalAddress() %> <%= session1.getRemoteAddress() %> <%= TimeUtil.formatDate(session1.getCreationTime()) %> <%= TimeUtil.elapsedTime(session1.getLastIoTime()) %>

    Terminal Cache Info (Distributed)

    CacheName: <%= cacheName %>, CacheSize: <%= cacheSize %>, Cache TTL: <%= cacheTime %>

    Shared Cache - Terminal Session Info

    <% if(isSpUserFound) { TerminalVO svo = sessionManager.getTerminal(terminalNo); if(svo != null) { spUuid = svo.getTerminalNo(); %> <% } } else { for(String key : cacheInfo.getKeys()) { TerminalVO svo = sessionManager.getTerminal(key); %> <% } } } catch(Exception e) { e.printStackTrace(); //e.printStackTrace(out); } %>
    key terminalNo RofcCd Brncd BrnName
    <%= terminalNo %> <%= svo.getTerminalNo() %> <%= svo.getRofcCd() %> <%= svo.getBrncd() %> <%= svo.getBrnName() %>
    <%= key %> <%= svo.getTerminalNo() %> <%= svo.getRofcCd() %> <%= svo.getBrncd() %> <%= svo.getBrnName() %>