반응형

[증상]

  1. Logger 서비스중 hlgr 서비스가 지속적으로 Restart 되는 현상 발생 

  2. Router는 정상이나 Logger 가 Restart되면서 A Side와 B Side의 Data가 틀어지는 현상이 발생 

 

[Log분석]

  1. 문제가 발생되는 Logger 서버의 EventViewer에서 Error 발생 
     -> Loss of heartbeats from side: B: hlgr. 
         이벤트 252, Cisco Systems, Inc. ICM 

     -> Process: hlgr at the central site side: B is down. 

     -> hlgr 서비스 restart 이후 Logger 전체 서비스 restart 실시 됨 

   2. ICM Dumplog 분석 
     -> ICM Dumplog에서 hlgr 서비스 log 확인 

16:00:00:458 lb-hlgr Trace: Send: PhysicalControllerID = 5001 DateTime 1368667072 
16:00:00:458 lb-hlgr Trace: Send: PhysicalControllerID = 5002 DateTime 1368667072 
16:00:00:474 lb-hlgr Trace: Send: PhysicalControllerID = 5005 DateTime 1368667072 
16:00:00:489 lb-hlgr Trace: Send: PeripheralID = 5008 DateTime 1368667552 
16:00:00:489 lb-hlgr Trace: Send: PeripheralID = 5009 DateTime 1368667552 
16:00:00:489 lb-hlgr Trace: Send: PhysicalControllerID = 5004 DateTime 1368667072 
16:00:00:786 lb-hlgr Trace: Send: PeripheralID = 5007 DateTime 1368667552 
16:00:00:786 lb-hlgr Trace: Send: PhysicalControllerID = 5003 DateTime 1368667072 
16:00:00:864 lb-hlgr Trace: Send: PeripheralID = 5000 DateTime 1368667552 
16:00:00:864 lb-hlgr Trace: Send: PhysicalControllerID = 5000 DateTime 1368667072 
16:02:32:930 lb-hlgr Trace: Local Time 12/20/2020 16:02:13.442 
16:02:32:930 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds  ==> 문제 발생
16:02:32:930 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:07:11:442 lb-hlgr Trace: 0% of the available log space is used in ucce_sideB database. 
16:07:11:442 lb-hlgr Trace: 4% of the available free space is used in ucce_sideB database. 
16:08:43:014 lb-hlgr Trace: Local Time 12/20/2020 16:08:32.951 
16:08:43:014 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 
16:08:43:014 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:08:53:015 lb-hlgr Trace: Local Time 12/20/2020 16:08:32.951 
16:08:53:015 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 
16:08:53:015 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:09:03:017 lb-hlgr Trace: Local Time 12/20/2020 16:08:32.951 
16:09:03:017 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 
16:09:03:017 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:09:13:031 lb-hlgr Trace: Local Time 12/20/2020 16:08:32.951 
16:09:13:031 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 
16:09:13:031 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:09:33:032 lb-hlgr Trace: Local Time 12/20/2020 16:08:41.951 
16:09:33:032 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 
16:09:33:032 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:09:43:033 lb-hlgr Trace: Local Time 12/20/2020 16:08:41.951 
16:09:43:033 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 
16:09:43:033 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:09:53:034 lb-hlgr Trace: Local Time 12/20/2020 16:08:41.951 
16:09:53:034 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 
16:09:53:034 lb-hlgr Trace: Logger running MDS Message Handler ProcessMDSMsg for Msg Class MSGCLASS_MDS 
16:10:23:036 lb-hlgr Trace: Local Time 12/20/2020 16:09:12.453 
16:10:23:036 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds 

16:02:32:930 lb-hlgr Trace: Local Time Has Stopped for 0 Milliseconds  ==> 문제 발생

 

[해결방안] 

   1. Logger 서비스는 MSSQL의 응답시간이 지연될때 해당 오류를 내보낸다 
      -> "Local Time Has Stopped" 
   2.  SQL Sever가 50 초 이상 응답하지 않으면 5 개의 오류 메시지가 연속적으로 발생하고 
      이 경우 Logger의 Node Manager는 오류를 제거하기 위해 lgr 프로세스를 다시 시작하거나

      Logger를 재부팅 (중지)한다 (ICM 설정시 Request Error일경우 재부팅 옵션을 빼서 서버는 재부팅 안됨 )

      ->12:25:31:247 lb-hlgr Trace: Local Time Has Stopped for 50020 Milliseconds  <-  crossing  50 seconds

   3. 문제되는 서버의 레시스트리를 수정한다 
      ->
"MessageTimeout" 설정을 50에서 120으로 변경한다 
      -> HKEY_LOCAL_MACHINE\Software\Cisco Systems Inc.\ICM <cust_inst>\LoggerA\Logger\CurrentVersion\Configuration\Time\MessageTimeout

      -> 해당 설정을하게 되면 Logger 서비스가 죽는걸 방지할 수 있다 

    4. 근본적인 원인은 콜 양이 많은경우 MS-SQL에서 메모리를 많이 사용하며 Router의 데이터를 Logger로 
       적재시키는데 이때 MS-SQL 메모리 제한이 걸려있어서 처리 속도가 현저하게 떨어졌고 이에 MSSQL 반응 
       속도가 적어지면서 MessageTimeout에 걸려 서비스가 리스타 되었던 것 

    5. Logger에 할당된 MS-SQL Memory 제한을 5G로 변경하니 MS-SQL 반응속도가 올라감 

 

함부로 MSSQL의 메모리를 제한하면 안될듯 하다

 

Error Log 첨부 : 

20201221_loggerB.zip
3.15MB

반응형