@@ -22,10 +22,10 @@ function attach(anything, done) {
2222
2323/**
2424 * get basic index information via `db.collection.indexes()`
25- * @param {Function } done callback
2625 * @param {object } results results from async.auto
26+ * @param {Function } done callback
2727 */
28- function getIndexes ( done , results ) {
28+ function getIndexes ( results , done ) {
2929 var client = results . client ;
3030 var ns = mongodbNS ( results . namespace ) ;
3131 client
@@ -45,10 +45,10 @@ function getIndexes(done, results) {
4545
4646/**
4747 * get index statistics via `db.collection.aggregate({$indexStats: {}})`
48- * @param {Function } done callback
4948 * @param {object } results results from async.auto
49+ * @param {Function } done callback
5050 */
51- function getIndexStats ( done , results ) {
51+ function getIndexStats ( results , done ) {
5252 var client = results . client ;
5353 var ns = mongodbNS ( results . namespace ) ;
5454 var pipeline = [
@@ -62,10 +62,12 @@ function getIndexStats(done, results) {
6262 }
6363 }
6464 ] ;
65+ debug ( 'Getting $indexStats for %s' , results . namespace ) ;
6566 var collection = client . db ( ns . database ) . collection ( ns . collection ) ;
6667 collection . aggregate ( pipeline , { cursor : { } } ) . toArray ( function ( err , res ) {
6768 if ( err ) {
6869 if ( isNotAuthorizedError ( err ) ) {
70+ debug ( 'Not authorized to get index stats' , err ) ;
6971 /**
7072 * In the 3.2 server, `readWriteAnyDatabase@admin` does not grant sufficient privileges for $indexStats.
7173 * The `clusterMonitor` role is required to run $indexStats.
@@ -75,7 +77,7 @@ function getIndexStats(done, results) {
7577 }
7678
7779 if ( err . message . match ( / U n r e c o g n i z e d p i p e l i n e s t a g e n a m e / ) ) {
78- // $indexStats not yet supported, return empty document
80+ debug ( ' $indexStats not yet supported, return empty document' , err ) ;
7981 return done ( null , { } ) ;
8082 }
8183 done ( err ) ;
@@ -89,13 +91,14 @@ function getIndexStats(done, results) {
8991
9092/**
9193 * get index sizes via `db.collection.stats()` (`indexSizes` field)
92- * @param {Function } done callback
9394 * @param {object } results results from async.auto
95+ * @param {Function } done callback
9496 */
9597
96- function getIndexSizes ( done , results ) {
98+ function getIndexSizes ( results , done ) {
9799 var client = results . client ;
98100 var ns = mongodbNS ( results . namespace ) ;
101+ debug ( 'Getting index sizes for %s' , results . namespace ) ;
99102 client
100103 . db ( ns . database )
101104 . collection ( ns . collection )
@@ -107,22 +110,24 @@ function getIndexSizes(done, results) {
107110 ) ;
108111 return done ( null , { } ) ;
109112 }
113+ debug ( 'Error getting index sizes for %s' , results . namespace , err ) ;
110114 return done ( err ) ;
111115 }
112116
113117 res = _ . mapValues ( res . indexSizes , function ( size ) {
114118 return { size : size } ;
115119 } ) ;
120+ debug ( 'Got index sizes for %s' , results . namespace , res ) ;
116121 done ( null , res ) ;
117122 } ) ;
118123}
119124
120125/**
121126 * merge all information together for each index
122- * @param {Function } done callback
123127 * @param {object } results results from async.auto
128+ * @param {Function } done callback
124129 */
125- function combineStatsAndIndexes ( done , results ) {
130+ function combineStatsAndIndexes ( results , done ) {
126131 var indexes = results . getIndexes ;
127132 var stats = results . getIndexStats ;
128133 var sizes = results . getIndexSizes ;
@@ -153,12 +158,13 @@ function getIndexDetails(client, namespace, done) {
153158 combineStatsAndIndexes
154159 ]
155160 } ;
156-
161+ debug ( 'Getting index details for namespace %s' , namespace ) ;
157162 async . auto ( tasks , function ( err , results ) {
158163 if ( err ) {
159- // report error
164+ debug ( 'Failed to get index details for namespace %s' , namespace , err ) ;
160165 return done ( err ) ;
161166 }
167+ debug ( 'Index details for namespace %s' , namespace , results . indexes ) ;
162168 // all info was collected in indexes
163169 return done ( null , results . indexes ) ;
164170 } ) ;
0 commit comments