示例#1
0
 public void ChangeAgentStatus(CommonLib.MsgAppServerStatus msg)
 {
     agentStatus.AppServer실행중           = msg.AppServer실행중;
     agentStatus.전체_CPU_사용량             = msg.전체_CPU_사용량;
     agentStatus.프로세스_CPU_사용량           = msg.프로세스_CPU_사용량;
     agentStatus.AppServer메모리_사용량       = msg.AppServer메모리_사용량;
     agentStatus.Agent와AppServer통신가능_여부 = msg.Agent와AppServer통신가능_여부;
     agentStatus.AppServer접속인원수         = msg.UserCount;
 }
示例#2
0
        static public void ChangeAgentStatus(string connectionID, CommonLib.MsgAppServerStatus msg)
        {
            var agent = GetAgent(connectionID);

            if (agent != null)
            {
                agent.ChangeAgentStatus(msg);
            }
        }
示例#3
0
        static string AppServer상태표시(CommonLib.MsgAppServerStatus msg)
        {
            var AppServer통신가능_여부 = "N";

            if (msg.Agent와AppServer통신가능_여부)
            {
                AppServer통신가능_여부 = "Y";
            }

            return(string.Format("App 서버와 통신:{0}, 현재인원:{1}", AppServer통신가능_여부.ToString(), msg.UserCount));
        }
        public static void 관리서버에_App서버_상태통보(string currentDateTime, string userCount)
        {
            try
            {
                //if (string.IsNullOrEmpty(currentDateTime))
                //{
                //    return;
                //}

                var exename = AppServerInfo.AppServerExeFileName.Replace(".exe", "");
                ComputerStatus.GetStatus(AppServerInfo.AppServerProcess, exename);

                bool 서버실행중 = true;
                if (AppServerInfo.AppServerProcess == null)
                {
                    서버실행중 = false;
                }

                bool agent와AppServer통신가능_여부 = true;
                if (string.IsNullOrEmpty(currentDateTime))
                {
                    agent와AppServer통신가능_여부 = false;
                }

                var msgAsppServerStatus = new CommonLib.MsgAppServerStatus()
                {
                    AppServer실행중           = 서버실행중,
                    전체_CPU_사용량             = ComputerStatus.전체_CPU_사용량.ToString(),
                    프로세스_CPU_사용량           = ComputerStatus.프로세스_CPU_사용량.ToString(),
                    AppServer메모리_사용량       = ComputerStatus.메모리_사용량.ToString(),
                    Agent와AppServer통신가능_여부 = agent와AppServer통신가능_여부,
                    UserCount = userCount,
                };


                string json = JsonConvert.SerializeObject(msgAsppServerStatus, Formatting.Indented);
                agentHubProxy.Invoke("Agent로부터_App서버_상태", json);
            }
            catch (Exception ex)
            {
                CommonLib.DevLog.Write(ex.ToString(), CommonLib.LOG_LEVEL.ERROR);
            }
        }
示例#5
0
        public static void ChangeAgentListView(string connectionID, CommonLib.MsgAppServerStatus msg)
        {
            foreach (System.Windows.Forms.ListViewItem lvi in ListViewAgent.Items)
            {
                if (lvi.SubItems[0].Text == connectionID)
                {
                    var 서버실행중 = "N";

                    if (msg.AppServer실행중)
                    {
                        서버실행중 = "Y";
                    }

                    if (lvi.SubItems[4].Text == "Y" && 서버실행중 == "N")
                    {
                        var agent = MainLib.MainLib.GetAgent(connectionID);

                        if (agent == null || agent.정상_AppServer_종료_여부(DateTime.Now) == false)
                        {
                            lvi.BackColor = System.Drawing.Color.Red;
                        }
                    }
                    else if (lvi.SubItems[4].Text == "N" && 서버실행중 == "Y")
                    {
                        lvi.BackColor = System.Drawing.Color.White;
                    }

                    lvi.SubItems[4].Text = 서버실행중;
                    lvi.SubItems[5].Text = msg.전체_CPU_사용량;
                    lvi.SubItems[6].Text = msg.프로세스_CPU_사용량;
                    lvi.SubItems[7].Text = msg.AppServer메모리_사용량;
                    lvi.SubItems[8].Text = AppServer상태표시(msg);
                    return;
                }
            }

            ListViewAgent.Refresh();
        }