Skip to content

Instantly share code, notes, and snippets.

@TylerBrock
Forked from mpobrien/gist:3020173
Created July 4, 2012 04:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save TylerBrock/3045394 to your computer and use it in GitHub Desktop.
Save TylerBrock/3045394 to your computer and use it in GitHub Desktop.
db.getSiblingDB("admin");
var databases = null;
databases = db.runCommand("listDatabases");
if(databases){
for(var i=0;i<databases.databases.length;i++){
//TODO skip if it's the admin database
var dbname = databases.databases[i].name;
var the_db = db.getSiblingDB(dbname)
databases.databases[i].stats = the_db.stats();
databases.databases[i].collections = {}
var collections = the_db.getCollectionNames();
for(var j=0;j<collections.length;j++){
var collectionname = collections[j]
var collectioninfo = {}
var collection = the_db.getCollection(collectionname);
collectioninfo['stats'] = collection.stats()
collectioninfo['indexes'] = collection.getIndexes()
databases.databases[i].collections[collectionname] = collectioninfo
}
}
}
printjson(databases)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment