로그 보기, 검색 및 관리
이 페이지의 내용
Ops Manager는 MongoDB 프로세스와 해당 에이전트 모두에 대한 로그 정보를 수집합니다. MongoDB 프로세스의 경우, 실시간 로그와 온디스크 로그에 모두 액세스할 수 있습니다.
Agent 로그는 Ops Manager 에이전트의 동작에 대한 인사이트를 제공합니다.
MongoDB 실시간 로그
MongoDB Agent는 핑을 모니터링할 때마다 getLog
명령을 실행합니다. 이 명령은 각 MongoDB 프로세스의 RAM 캐시에서 로그 항목을 수집합니다.
MongoDB Ops Manager는 기본적으로 실시간 로그 수집을 활성화합니다. MongoDB Ops Manager 프로젝트의 모든 MongoDB 배포 또는 개별 MongoDB 배포 에 대해 로그 수집을 비활성화할 수 있습니다. 로그 수집을 비활성화하면 MongoDB Ops Manager는 이전에 수집된 로그 항목을 계속 표시합니다.
MongoDB 실시간 로그 보기
이 기능에 액세스하려면 다음 역할 중 하나에 의해 부여된 권한이 있어야 합니다.
(선택 사항) 샤딩된 클러스터의 경우 나열되는 프로세스 유형을 필터링합니다.
4개의 버튼은 왼쪽에서 오른쪽으로 Shards, Configs, Mongos 및 BIs 순서로 나열됩니다.
프로세스 | 디스플레이 |
---|---|
Shards | 데이터를 호스팅하는 몽고 프로세스를 생성합니다. |
Configs | 구성 서버로 실행되어 샤딩된 클러스터의 메타데이터를 저장하는mongod 프로세스입니다. |
Mongos | 몽고 프로세스는 샤딩된 클러스터에서 데이터를 라우팅합니다. |
BIs | 샤딩된 클러스터의 데이터에 액세스하는 BI 프로세스입니다. |
탭 을 Logs 클릭합니다.
이 탭에는 로그 정보가 표시됩니다.
배포에 대해 로그 컬렉션 활성화 또는 비활성화
프로세스 의 줄에서 줄임표[...]Monitoring Settings아이콘을 클릭한 다음 을 클릭합니다.
프로젝트에 대해 로그 컬렉션 활성화 또는 비활성화
원하는 대로 Collect Logs For All Hosts 옵션을 Yes No또는 로 전환합니다.
MongoDB 온디스크 로그
MongoDB Ops Manager는 MongoDB 인스턴스가 실행 중이 아니더라도 디스크 로그를 수집합니다. MongoDB Agent는 MongoDB systemLog.path
구성 옵션 에 지정한 위치에서 로그를 수집합니다. MongoDB 온디스크 로그는 실시간 로그의 하위 집합이므로 덜 장황합니다.
온디스크 로그에 대한 로그 로테이션을 구성할 수 있습니다. Ops Manager는 기본적으로 로그를 로테이션합니다.
이 절차는 Ops Manager의 시스템 로그와 감사 로그를 모두 로테이션합니다.
MongoDB 온디스크 로그 보기
이 기능에 액세스하려면 다음 역할 중 하나에 의해 부여된 권한이 있어야 합니다.
수집할 프로세스당 Ops Manager 로그 유형과 이러한 로그의 최대 누적 크기를 선택합니다.
다운로드할 로그를 선택하려면 다음 작업을 수행합니다:
작업 | 목적 |
---|---|
클릭 MongoDB Logs | 배포된 MongoDB 프로세스에서 로그를 수집합니다. systemLog.destination 속성이 |
클릭 FTDC Data | 서버 통계 및 상태 메시지와 같은 진단 데이터 파일을 (FTDC) 컬렉션 메커니즘에서 수집합니다. |
클릭 Automation Agent Logs | 배포된 자동화 에이전트에서 로그를 수집합니다. |
클릭 Backup Agent Logs | 배포된 모든 백업 에이전트에서 로그를 수집합니다. 이는 다른 로그와 다릅니다. 수집된 로그는 선택한 호스트로 제한되지 않고 배포의 모든 백업 에이전트 로그를 포함합니다. |
클릭 Monitoring Agent Logs | 배포된 모든 모니터링 에이전트에서 로그를 수집합니다. 이는 다른 로그와 다릅니다. 수집된 로그는 선택한 호스트로 제한되지 않고 배포의 모든 모니터링 에이전트 로그를 포함합니다. |
MB 단위로 Size per Log Type 설정 | 선택한 모든 로그 파일의 압축되지 않은 최대 누적 크기(MB)를 입력합니다.
|
예시
복제본 세트 의 모든 프로세스에서 20 MB의 로그를 수집하도록 선택합니다. 이 복제본 세트에는 두 개의 호스트에 세 개의 mongod 프로세스가 있습니다.
host1:27017
host2:27017
host2:27018
배포에서 다음 에이전트를 실행합니다:
자동화 에이전트 | host1 , host2 , host4 , host5 |
백업 에이전트 | host4 |
모니터링 에이전트 | host4 , host5 |
이 복제본 세트의 모든 로그 유형을 선택하고 프로세스당 20MB로 제한하면 Ops Manager는 Estimated Total Size가 20GB 중 220MB (11개 프로세스* 20MB)임을 표시합니다.
로그 수집이 시작되면 Ops Manager는 가장 최근 로그 항목부터 로그 파일이 20MB에 다다를 때까지 또는 마지막 로그가 수집될 때까지 mongod
프로세스 및 관련 FTDC를 로그 디렉토리에서 스캔합니다. 배포에 포함된 모든 모니터링 및 백업 에이전트도 스캔됩니다.
백업 에이전트에는 60MB의 로그가 있습니다.
각 MongoDB 프로세스(3)에는 프로세스당 7MB의 로그와 15MB의 FTDC 데이터가 있습니다.
각 모니터링 에이전트(2)에는 30MB의 로그가 있습니다.
각 자동화 에이전트(2)에는 12MB의 로그가 있습니다.
수집된 로그의 총 크기는 150M입니다:
(20 + (3 * (7 + 15)) + (2 * 20) + (2 * 12)) = 150
백업 에이전트에서 최대 20MB의 로그가 수집됩니다.
각 MongoDB 프로세스에 대한 모든 로그가 수집됩니다: 7MB의 MongoDB + 15MB의 FTDC 데이터.
각 모니터링 에이전트에서 최대 20MB의 로그가 수집됩니다.
host1
및host2
의 모든 자동화 에이전트 로그가 수집됩니다.host4
및host5
는 복제본 세트에 어떤 프로세스도 호스팅하지 않습니다.
다운로드한 아카이브 내의 결과 아카이브 구조는 다음과 같습니다.
host1/27017/mongodb host1/27017/ftdc host1/automation_agent host2/27017/mongodb host2/27017/ftdc host2/27018/mongodb host2/27018/ftdc host2/automation_agent host4/backup_agent host4/monitoring_agent host5/monitoring_agent
(선택 사항) 로그에서 민감한 정보를 삭제합니다.
로그를 익명화하려면 Replace IP addresses, hostnames, namespaces, strings with randomized values를 선택합니다.
이 옵션은 IP 주소를 비공개 범위(192.168.x.x)로 대체합니다. 호스트 이름의 경우 이 옵션은 FQDN만 대체합니다. 다른 호스트 이름은 변경되지 않습니다. 교체는 예측 가능한 패턴을 따릅니다. 예를 들어 blue.strawberry
가 FQDN test.internal
의 한 인스턴스를 대체하는 경우, blue.strawberry
는 test.internal
의 다른 모든 인스턴스도 대체합니다.
참고
이는 $redact 집계 파이프라인을 사용하지 않습니다. 이는 더 광범위한 기능 세트를 제공하는 별도의 기능입니다.
페이지에서 진행 Log Request History 상황을 확인합니다.
항목 상태는 Collecting Logs...를 표시하고 로그 수집이 계속됨에 따라 상태를 자동으로 업데이트합니다.
Ops Manager가 로그 파일 검색에 실패한 경우 Retry를 클릭하여 실패한 로그 파일을 다시 검색하세요.
오류가 발생한 경우에도 아카이브를 다운로드할 수 있습니다. 요청된 로그 파일 중 일부가 누락될 수 있습니다.
수집된 로그 아카이브를 다운로드합니다.
Download icon을 클릭합니다.
Log Request History 페이지에 나열된 아카이브 크기는 압축되지 않은 크기입니다. 아카이브는 추출된 후에 대상 호스트에서 그만큼의 디스크 공간을 소비합니다.
이 다운로드는 다시 시작할 수만 있고 재개할 수는 없습니다. 다운로드에 실패하면 로그를 다시 다운로드해야 합니다.
아카이브의 이름은 mongodb-logfiles_<instance_or_process>_<ISO8601_Format_Date>.tar.gz
입니다.
추출된 파일은 다음과 같은 디렉토리 구조를 사용합니다:
<host> automation_agent automation-agent-verbose.log automation-agent-verbose.log.<ISO8601_Format_Date> backup_agent backup-agent-verbose.log backup-agent-verbose.log.<ISO8601_Format_Date> monitoring_agent monitoring-agent-verbose.log monitoring-agent-verbose.log.<ISO8601_Format_Date> <replica_set> // Sharded Cluster Only <port> ftdc metrics.<ISO8601_Format_Date> metrics.interim mongodb mongodb.log mongodb.log.<ISO8601_Format_Date> <port> // Replica Set or Standalone ftdc metrics.<ISO8601_Format_Date> metrics.interim mongodb mongodb.log mongodb.log.<ISO8601_Format_Date>
참고
Microsoft Windows 호스트에서 아카이브를 추출할 때는 tar
PAX 확장 헤더 를 지원하는 아카이브 추출 유틸리티를 사용하세요. . 일부 Windows 아카이브 유틸리티에는 tar
에 대한 PAX 확장 헤더 관련 문제가 있습니다.
수집된 로그는 7일 후에 만료되어 삭제됩니다. 특정 로그 파일의 수명을 연장하려면 Log Request History 페이지에서 해당 아카이브에 대한 extend 링크를 클릭합니다.
로그 로테이션 구성
Ops Manager는 MongoDB 에이전트가 관리하는 클러스터의 로그를 로테이션 및 압축할 수 있습니다. MongoDB 에이전트가 클러스터만 모니터링하는 경우, 해당 클러스터의 로그는 무시됩니다.
중요
MongoDB Enterprise 버전 5.0 이상 및 MongoDB Agent 11.0.13.7055 이상을 실행하는 경우 다음을 수행할 수 있습니다:
서버 로그와 감사 로그 로테이션에 대한 별도의 규칙을 설정합니다.
Ops Manager를 사용하여 감사 로그를 압축하고 삭제합니다. 보안상의 이유로 Ops Manager 외부에서 감사 로그 압축 및 삭제를 관리하는 것이 좋습니다.
MongoDB Enterprise 또는 MongoDB Agent의 이전 버전을 실행 중인 경우 Ops Manager는 다음을 수행합니다.
System Log Rotation 설정을 사용하여 서버 로그와 감사 로그를 모두 로테이션합니다.
감사 로그를 압축하거나 삭제하지 않습니다. 압축 및 삭제를 구성하면 Ops Manager는 이러한 설정을 서버 로그에만 적용합니다.
MongoDB Community 사용자는 서버 로그만 로테이션, 압축, 삭제할 수 있습니다.
참고
이 기능을 사용할 때는 logrotate
와 같은 플랫폼 기반 로그 로테이션 서비스를 사용하지 않도록 설정합니다. 프로세스 구성 파일에서 reopen
및 rename
플래그를 제거합니다. MongoDB Agent가 클러스터만 모니터링하는 경우, 해당 클러스터는 플랫폼 기반 서비스를 사용할 수 있습니다.
로그 로테이션을 활성화합니다.
서버 로그를 로테이션하려면 System Log Rotation을 ON으로 토글합니다.
MongoDB Enterprise 버전 5.0 이상 및 MongoDB Agent 11.0.13.7055 이상을 실행하는 MongoDB Enterprise 사용자는 Audit Log Rotation을 ON으로 전환하여 감사 로그를 로테이션하고 감사 로그 로테이션을 개별적으로 구성할 수 있습니다.
이전 버전의 MongoDB Enterprise 또는 MongoDB Agent를 실행 중인 경우 System Log Rotation을 ON으로 설정하면 감사 로그도 로테이션됩니다.
Ops Manager가 로그를 로테이션하지 않도록 하려면 로그 로테이션을 OFF로 설정합니다. 로그 로테이션은 기본적으로 OFF로 설정됩니다.
로그 로테이션을 활성화하면 Ops Manager에 추가 로그 로테이션 설정이 표시됩니다.
로그 로테이션 설정을 구성합니다.
Ops Manager는 다음 설정에 따라 MongoDB 호스트의 로그를 로테이션합니다:
필드 | 필요성 | 작업 | 기본값 |
---|---|---|---|
Size Threshold (MB) | 필수 사항 | Ops Manager는 이 최대 로그 파일 크기를 초과하는 로그 파일을 회전합니다. | 1000 |
Time Threshold (Hours) | 필수 사항 | Ops Manager는 이 기간을 초과하는 로그를 로테이션합니다. | 24 |
Max Uncompressed Files | 옵션 | 로그 파일은 이 파일 수를 초과할 때까지 압축되지 않은 상태로 유지될 수 있습니다. Ops Manager는 가장 오래된 로그 파일을 먼저 압축합니다. 이 설정을 비워 두면 Ops Manager는 기본값인 | 5 |
Max Percent of Disk | 옵션 | 로그 파일은 MongoDB 호스트의 로그 볼륨에서 디스크 공간의 이 비율까지 차지할 수 있습니다. 이 디스크 임계값을 초과하면 Ops Manager가 가장 오래된 로그 파일을 삭제합니다. 이 설정을 비워 두면 Ops Manager는 기본값인 | 2% |
Total Number of Files | 옵션 | 총 로그 파일 수입니다. 숫자를 지정하지 않으면 총 로그 파일 수의 기본값은 0 이며 다른 Rotate Logs 설정에 따라 결정됩니다. | 0 |
완료했으면 Save을 클릭하여 변경 사항을 검토합니다.
에이전트 로그
Ops Manager는 모든 MongoDB Agents에 대한 로그를 수집합니다.
에이전트 로그 보기
이 기능에 액세스하려면 다음 역할 중 하나에 의해 부여된 권한이 있어야 합니다.
로그 항목을 필터링합니다.
다른 유형의 에이전트에 대한 로그를 표시하려면 View 드롭다운 목록을 사용하세요.
특정 호스트 또는 MongoDB 프로세스에 대한 로그를 표시하려면 톱니바퀴 아이콘을 클릭하고 항목을 선택합니다.
필터를 지우려면 톱니바퀴 아이콘을 클릭하고 Remove Filters를 클릭합니다.
선택한 로그를 다운로드하려면 톱니바퀴 아이콘을 클릭하고 Download as CSV File를 클릭합니다.
참고
특정 에이전트의 로그를 보려면 Agents 탭의 All Agents 목록을 클릭한 다음 해당 에이전트의 view logs를 클릭해도 됩니다.
에이전트 로그 로테이션 구성
Automation을 사용하여 클러스터를 관리하는 경우에는 다음 절차에 따라 에이전트 로그 파일의 로테이션을 구성하세요.
참고
Automation을 활성화하지 않은 경우에는 다음 문서에서 에이전트 구성 파일의 로깅 설정을 수동으로 구성하는 방법에 대한 정보를 참조하세요.
섹션까지 아래로 Agent Log Settings 스크롤합니다.
로그 설정을 편집합니다.
모니터링 에이전트 또는 백업 에이전트 로그 설정을 편집하려면 pencil 아이콘을 클릭합니다.
이름 | 유형 | 설명 | |
---|---|---|---|
Linux Log File Path | 문자열 | 조건부: Linux 호스트에 로그. 에이전트가 Linux 호스트에서 로그를 기록하는 경로입니다. 제안 값은 다음과 같습니다.
| |
Windows Log File Path | 문자열 | 조건부: Windows 호스트에 로그. 에이전트가 Windows 호스트에 로그를 기록하는 경로입니다. 제안 값은 다음과 같습니다.
| |
Rotate Logs | 토글 | 로그를 로테이션할지 여부를 선택하는 토글입니다. | |
Size Threshold (MB) | integer | 로그가 자동으로 로테이션되는 크기입니다. 기본값은 1000 입니다. | |
Time Threshold (Hours) | integer | 로그가 자동으로 로테이션하는 기간입니다. 기본값은 24 입니다. | |
Max Uncompressed Files | integer | 선택 사항. 현재 로그 파일을 포함하여 압축되지 않은 상태로 유지되어야 하는 최대 로그 파일 수입니다. 제안 값은 5 입니다. | |
Max Percent of Disk | integer | 선택 사항. 로그가 소비해야 하는 MongoDB 호스트의 디스크 공간의 최대 비율입니다. 제안 값은 2% 입니다. | |
Total Number of Files | integer | 선택 사항. 총 로그 파일 수입니다. 숫자를 지정하지 않으면 총 로그 파일 수의 기본값은 0 이며 다른 Rotate Logs 설정에 따라 결정됩니다. |
완료했으면 Save을 클릭합니다.
Ops Manager 로그
Ops Manager를 사용하여 다양한 로그 파일을 검토할 수 있습니다:
일부 Ops Manager 로그를 보관하는 기간을 변경할 수 있습니다. 회사에서 법적 요건을 위해 로그 데이터를 보관해야 할 수도 있습니다. 해당 요구 사항을 준수하도록 로그 보존 정책을 변경할 수 있습니다.