Skip to content

Instantly share code, notes, and snippets.

@ovntatar
Created August 11, 2016 07:25
Show Gist options
  • Save ovntatar/f44633c51c1a03d4e07f35420db081a2 to your computer and use it in GitHub Desktop.
Save ovntatar/f44633c51c1a03d4e07f35420db081a2 to your computer and use it in GitHub Desktop.
read human readable size from MongoDB collections
# inspired by https://gist.github.com/joeyAghion/6511184
function getReadableFileSizeString(fileSizeInBytes) {
var i = -1;
var byteUnits = [' kB', ' MB', ' GB', ' TB', 'PB', 'EB', 'ZB', 'YB'];
do {
fileSizeInBytes = fileSizeInBytes / 1024;
i++;
} while (fileSizeInBytes > 1024);
return Math.max(fileSizeInBytes, 0.1).toFixed(1) + byteUnits[i];
};
var collectionNames = db.getCollectionNames(), stats = [];
collectionNames.forEach(function (n) { stats.push(db[n].stats()); });
stats = stats.sort(function(a, b) { return b['size'] - a['size']; });
for (var c in stats) { print(stats[c]['ns'] + ": " + getReadableFileSizeString(stats[c]['size']) + " (" + getReadableFileSizeString(stats[c]['storageSize']) + ")"); }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment