몽고DB 모니터링
MongoDB 서비스를 설치, 배포 및 활성화한 후에는 MongoDB의 작동을 이해하고 MongoDB의 성능을 확인해야 합니다. 이는 대규모 트래픽에 잘 대처하고 MongoDB의 정상적인 작동을 보장할 수 있습니다.
MongoDB는 MongoDB의 작동을 모니터링하기 위해 mongostat와 mongotop이라는 두 가지 명령을 제공합니다.
mongostat 명령
mongostat는 mongodb와 함께 제공되는 상태 감지 도구이며 명령줄에서 사용됩니다. 고정된 간격으로 mongodb의 현재 실행 상태를 가져와서 출력합니다. 데이터베이스가 갑자기 느려지거나 다른 문제가 있는 경우 첫 번째 단계는 mongostat를 사용하여 mongo의 상태를 확인하는 것입니다.
Mongod 서비스를 시작하고 설치한 MongoDB 디렉토리 아래의 bin 디렉토리를 입력하세요. 그런 다음 아래와 같이 mongostat 명령을 입력합니다.
D:\set up\mongodb\bin>mongostat
위 명령의 출력은 다음과 같습니다.
mongotop 명령
mongotop도 내장 명령입니다. mongotop에서 제공하는 mongodb 아래 도구에서 MongoDB 인스턴스를 추적하여 데이터를 읽고 쓰는 데 많은 시간이 소요되는 위치를 확인하는 방법입니다. mongotop은 컬렉션별 수준 통계를 제공합니다. 기본적으로 mongotop은 매초마다 값을 반환합니다.
Mongod 서비스를 시작하고 설치한 MongoDB 디렉터리 아래에 bin 디렉터리를 입력하세요. 그런 다음 아래와 같이 mongotop 명령을 입력합니다.
D:\set up\mongodb\bin>mongotop
위 명령 실행 출력은 다음과 같습니다.
매개변수 예시
E:\mongodb-win32-x86_64-2.2.1\bin>mongotop 10
뒤의 10은 <sleeptime> 매개변수이며, mongotop 대기 호출 사이의 대기 시간(초)입니다. 기본적으로 mongotop은 매초마다 데이터를 반환합니다.
E:\mongodb-win32-x86_64-2.2.1\bin>mongotop --locks
mongotop-locks를 사용하여 데이터베이스당 잠금 사용량을 보고합니다. 그러면 다음과 같은 출력이 생성됩니다.
출력 결과 필드 설명:
ns:
에는 데이터베이스 이름과 컬렉션을 결합한 데이터베이스 네임스페이스가 포함되어 있습니다.
db:
데이터베이스 이름이 포함됩니다. 이름이 지정된 데이터베이스는 특정 데이터베이스에 대해 잠긴 것이 아니라 전역적으로 잠겨 있습니다.
total:
mongod가 이 네임스페이스에서 작업하는 데 소비한 총 시간을 제공합니다.
read:
은 mongod가 이 네임스페이스에서 읽기 작업을 수행하는 데 많은 시간을 소비합니다.
write:
mongod가 많은 시간을 소비하는 쓰기 작업을 위해 이 네임스페이스를 제공합니다.