2016-08-17 4 views
2

유성이 내 mongo의 oplog를 사용하고 있는지 어떻게 확인할 수 있습니까? 나는 mongo의 클러스터를 가지고 있으며 내 유성에 대해 두 개의 env를 설정합니다.Mongo Oplog를 사용하여 유성입니까?

MONGO_URL=mongodb://mongo/app?replicaSet=rs0 
MONGO_OPLOG_URL=mongodb://mongo/local?authSource=app 

옵트 로그가 실제로 사용되고 있는지 어떻게 확인할 수 있습니까? Meteor는 매우 비효율적 인 쿼리 폴링으로 전환 할 수 있지만 oplog와 제대로 작동하는지 확인하고 싶습니다.

아이디어가 있으십니까?

+0

@ michel-floyd 수정에 감사드립니다. – Luman75

답변

3

유성의 OplogObserveDriver docs에서 관련 비트를 인용 : 쿼리는 지금

을 OplogObserveDriver 사용하는 경우

방법 알려, 우리는 얼마나 많은 observeChanges 전화를 사용하고 말할 원유 방법이 OplogObserveDriver, 그리고 그들이 어떤 전화가 아니라.

이 패키지는 현재 Meteor 서버의 실시간 메트릭을 표시하는 내부 Meteor 패키지 인 facts 패키지를 사용합니다. 앱에서 meteor add facts을 실행하고 {{> serverFacts}} 템플릿을 앱에 추가합니다. autopublish 패키지를 사용하는 경우 Meteor는 모든 메트릭을 모든 사용자에게 자동으로 게시합니다. autopublish을 사용하지 않는 경우 서버 코드에서 Facts.setUserIdFilter을 호출하여 Meteor에게 사용자에게 측정 항목을 표시해야합니다. 예를 들면 :

Facts.setUserIdFilter(function (userId) { 
    var user = Meteor.users.findOne(userId); 
    return user && user.admin; 
}); 

는 (로컬 응용 프로그램을 실행하는 경우, Facts.setUserIdFilter(function() { return true; }); 충분하실 수 있습니다!)

지금 당신의 응용 프로그램을 확인합니다. 사실 템플릿은 다양한 측정 항목을 렌더링합니다. 우리가 찾고있는 것들은 mongo-livedata 섹션에서 관찰 - 운전자 - 관찰자와 관찰자 - 투표자입니다. observe-drivers-polling이 0이거나 전혀 렌더링되지 않으면 모든 observeChanges 호출이 OplogObserveDriver!를 사용하고 있습니다!

0

앱의 성능을 모니터링 Kadira APM을 사용하는 경우 oplogs는 "라이브 쿼리"섹션으로 이동하고 "Oplog 통지"차트를 살펴함으로써 작업하는 경우, 당신은 볼 수 있습니다.

차트 (오른쪽 하단)에 값이 표시됨에 따라 화면 캡처에서 oplog가 작동하는지 확인할 수 있습니다. oplogs가 작동하지 않으면이 차트는 비어 있습니다.

apm oplog chart ninjapixel meteor

관련 문제