Uploaded image for project: 'MongoDB Database Tools'
  1. MongoDB Database Tools
  2. TOOLS-580

mongostat needs to use new serverStatus fields in RC5

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Blocker - P1 Blocker - P1
    • 3.0.0-rc6
    • Affects Version/s: 2.8.0-rc5
    • Component/s: mongostat
    • Labels:
      None

      insert query update delete getmore command flushes mapped vsize    res faults       locked db idx miss %  qr|qw  ar|aw netIn netOut conn     time
          *0 45735  29898     *0       0     1|0       0   4.3g  9.1g 119.0m      0 Collection:0.0%          0 73|123 73|125   61m     3m  201 00:03:52
          *0 44946  30356     *0       0     1|0       0   4.3g  9.1g 119.0m      0 Database:0.0%          0 42|107 65|107   61m     3m  201 00:03:53
          *0 45455  30167     *0       0     1|0       0   4.3g  9.1g 119.0m      0   Global:0.0%          0 106|91 106|92   61m     3m  201 00:03:54
          *0 45506  30236     *0       0     1|0       0   4.3g  9.1g 119.0m      0 Collection:0.0%          0 105|92 105|92   61m     3m  201 00:03:55
          *0 44753  30587     *0       0     2|0       0   4.3g  9.1g 119.0m      0 Collection:0.0%          0 105|92 105|92   62m     3m  201 00:03:56
          *0 46112  30198     *0       0     1|0       0   4.3g  9.1g 119.0m      0    oplog:0.0%          0 115|78 115|81   61m     3m  201 00:03:57
          *0 45360  30140     *0       0     2|0       0   4.3g  9.1g 119.0m      0   Global:0.0%          0 76|121 76|122   61m     3m  201 00:03:58
          *0 46655  29910     *0       0     1|0       0   4.3g  9.1g 119.0m      0 Database:0.0%          0 107|89 107|91   61m     3m  201 00:03:59
          *0 45572  29959     *0       0     1|0       0   4.3g  9.1g 119.0m      0   Global:0.0%          0 101|94 101|95   61m     3m  201 00:04:00
          *0 45906  30174     *0       0     2|0       0   4.3g  9.1g 119.0m      0    oplog:0.0%          0 75|119 76|119   61m     3m  201 00:04:01
      

      The format in db.serverStatus().locks totally changed. We need to figure out what exactly we want to display there:

      > db.serverStatus().locks
      {
      	"Global" : {
      		"acquireCount" : {
      			"r" : NumberLong(20246107),
      			"w" : NumberLong(13563785),
      			"R" : NumberLong(0),
      			"W" : NumberLong(5)
      		},
      		"acquireWaitCount" : {
      			"r" : NumberLong(1),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(1)
      		},
      		"timeAcquiringMicros" : {
      			"r" : NumberLong(73),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(13)
      		},
      		"deadlockCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		}
      	},
      	"MMAPV1Journal" : {
      		"acquireCount" : {
      			"r" : NumberLong(45924652),
      			"w" : NumberLong(30777069),
      			"R" : NumberLong(5675),
      			"W" : NumberLong(28)
      		},
      		"acquireWaitCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(9955),
      			"R" : NumberLong(3022),
      			"W" : NumberLong(0)
      		},
      		"timeAcquiringMicros" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(1263962),
      			"R" : NumberLong(142889),
      			"W" : NumberLong(0)
      		},
      		"deadlockCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		}
      	},
      	"Database" : {
      		"acquireCount" : {
      			"r" : NumberLong(20246102),
      			"w" : NumberLong(13562971),
      			"R" : NumberLong(5),
      			"W" : NumberLong(814)
      		},
      		"acquireWaitCount" : {
      			"r" : NumberLong(5437682),
      			"w" : NumberLong(3648513),
      			"R" : NumberLong(0),
      			"W" : NumberLong(779)
      		},
      		"timeAcquiringMicros" : {
      			"r" : NumberLong(1864720043),
      			"w" : NumberLong(1472601622),
      			"R" : NumberLong(0),
      			"W" : NumberLong("870380842721")
      		},
      		"deadlockCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		}
      	},
      	"Collection" : {
      		"acquireCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(20246174),
      			"W" : NumberLong(13562971)
      		},
      		"acquireWaitCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(20240933),
      			"W" : NumberLong(13562726)
      		},
      		"timeAcquiringMicros" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong("28051062057"),
      			"W" : NumberLong("35246438525")
      		},
      		"deadlockCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		}
      	},
      	"Metadata" : {
      		"acquireCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(1)
      		},
      		"acquireWaitCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		},
      		"timeAcquiringMicros" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		},
      		"deadlockCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		}
      	},
      	"oplog" : {
      		"acquireCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		},
      		"acquireWaitCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		},
      		"timeAcquiringMicros" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		},
      		"deadlockCount" : {
      			"r" : NumberLong(0),
      			"w" : NumberLong(0),
      			"R" : NumberLong(0),
      			"W" : NumberLong(0)
      		}
      	}
      }
      

      Would also be nice to make the output not shift back and forth with the width of the string in locked. It doesn't do that in 2.6.

            Assignee:
            mikeo@mongodb.com Michael O'Brien
            Reporter:
            dan@mongodb.com Daniel Pasette (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: