소개
이 문서에서는 RCM의 로그 생성 로그 파일 패턴 및 복구와 관련된 문제에 대해 설명합니다.
개요
참고: RCM(Redundancy Configuration Manager)에 대한 지식이 있는 것이 좋습니다.
RCM에서는 각 구성 요소(포드)에 대해 로그 수집 파일이 생성되어 최대 4일까지 보존되고, 그 후 RCM에서 자동으로 이러한 로그 파일을 삭제합니다.
RCM의 구성에 따라 다음을 수행합니다.
Max number of files which can be generated = 10
(can vary as per the RCM docker config but it should be 9/10)
Max size of per file =10Mb
(can vary as per the RCM docker config but 10Mb is majorly defined)
문제
로그 파일은 3~10분 범위에서 생성됩니다. RCM은 10개의 파일을 축적하는 즉시 오래된 파일을 제거하므로 지난 4일의 로그 파일은 보존되지 않습니다.
문제 해결
문제점: 주의해야 할 문제는 파일 수가 너무 많아 임계값인 10개 파일을 빠르게 생성하는 것입니다.
로그 파일 중 하나를 검토할 때 오류 이벤트를 식별했습니다. 여기에 설명된 것처럼 디버깅 수준에서 특정 추가 이벤트가 트리거된 것으로 보입니다.
{"log":"2023/03/14 10:04:44.399 [DEBUG] [ApplicationContext.go:1922] [infra.application.core] Ping method is found for the rpc rcm-checkpointmgr-19, host rcm-checkpointmgr-191\n","stream":"stdout","time":"2023-03-14T10:04:44.399280518Z"}
{"log":"2023/03/14 10:04:44.399 [DEBUG] [ApplicationContext.go:1760] [infra.dpd.core] Ping reachable client Id 4 Name: rcm-checkpointmgr-193 Setname: rcm-checkpointmgr-19 Host: rcm-checkpointmgr-19 Port: 9003 Url: \n","stream":"stdout","time":"2023-03-14T10:04:44.399284297Z"}
{"log":"2023/03/14 10:04:47.418 [DEBUG] [ApplicationContext.go:1760] [infra.dpd.core] Ping reachable client Id 2 Name: rcm-checkpointmgr-141 Setname: rcm-checkpointmgr-14 Host: rcm-checkpointmgr-14 Port: 9003 Url: \n","stream":"stdout","time":"2023-03-14T10:04:47.418602948Z"}
{"log":"2023/03/14 10:04:47.418 [DEBUG] [ApplicationContext.go:1760] [infra.dpd.core] Ping reachable client Id 2 Name: rcm-checkpointmgr-111 Setname: rcm-checkpointmgr-11 Host: rcm-checkpointmgr-11 Port: 9003 Url: \n","stream":"stdout","time":"2023-03-14T10:04:47.418606903Z"}
{"log":"2023/03/14 10:04:47.418 [DEBUG] [ApplicationContext.go:1922] [infra.application.core] Ping method is found for the rpc rcm-checkpointmgr-14, host rcm-checkpointmgr-141\n","stream":"stdout","time":"2023-03-14T10:04:47.418610757Z"}
식별된 오류 이벤트는 디버깅 수준에서 구성된 인프라 로그와 관련이 있습니다. 이러한 이벤트는 필수적이지 않은 과도한 양의 Ping 연결 가능성 이벤트를 생성합니다. 따라서 각 로그 파일이 10MB 임계값 크기에 빠르게 도달하여 여러 로그 파일이 누적됩니다.
권장 사항에 따르면
RCM 애플리케이션을 위해 디버그 레벨 로그를 구성해야 합니다. RCM에서 다른 소스의 불필요한 로그 이벤트를 필터링하려면 이 로깅 컨피그레이션을 활성화해야 합니다.
RCM Ops-Center 로깅 레벨
이는 RCM에 권장되는 로깅 레벨입니다.
logging level application debug
logging level transaction debug
logging level tracing off
logging name infra.application.core level application warn
logging name infra.application.core level transaction warn
logging name infra.application.core level tracing off
logging name infra.dpd.core level application warn
logging name infra.dpd.core level transaction warn
logging name infra.dpd.core level tracing off
logging name infra.config.core level application warn
logging name infra.config.core level transaction warn
logging name infra.config.core level tracing off
logging name infra.heap_dump.core level application warn
logging name infra.heap_dump.core level transaction warn
logging name infra.heap_dump.core level tracing off
logging name infra.resource_monitor.core level application warn
logging name infra.resource_monitor.core level transaction warn
logging name infra.resource_monitor.core level tracing off
logging name infra.topology.core level application warn
logging name infra.topology.core level transaction warn
logging name infra.topology.core level tracing off
logging name infra.transaction.core level application warn
logging name infra.transaction.core level transaction warn
logging name infra.transaction.core level tracing off
logging name infra.diagnostics.core level application warn
logging name infra.diagnostics.core level transaction warn
logging name infra.diagnostics.core level tracing off
이러한 부적절한 로깅 컨피그레이션을 수정한 후 잘못된 로그 파일 문제가 해결됩니다.