/* How to export * mongo is mongoshell command mongo dbname --quiet mongodbIndexExporter.js > index.js */ let collectionNames = db.getCollectionNames(); let index_data = {'collections': []}; for (let i in collectionNames) { let collection = collectionNames[i]; // let indexes = db[collection].getIndexes(); let indexes; try { indexes = db[collection].getIndexes(); } catch (err) { continue; } let json = { 'name': collection, 'indexes': [] }; for (let j in indexes) { let idx = indexes[j]; let doc = { 'name': idx['name'], 'key': idx['key'] }; if ('expireAfterSeconds' in idx) { doc['expireAfterSeconds'] = idx['expireAfterSeconds']; } if ('background' in idx) { doc['background'] = idx['background']; } if ('unique' in idx) { doc['unique'] = idx['unique']; } if('collation' in idx) { doc['collation'] = { 'locale': idx['collation']['locale'], 'strength': idx['collation']['strength'], }; } json['indexes'].push(doc) } index_data['collections'].push(json); }; print('let indexes = '); printjson(index_data); print(';');