본문 바로가기

빅데이터/nosql

mongodb shell에서 printjson을 사용하여 BSON을 text로 보기

mongodb shell에서 print()는 javascript의 method로서 사용가능하여 bson과 같은 데이터를 text로 표현하지 못한다. 그러므로 bson을 데이터로 보기 위해서는 mognodb에서 제공하는 printjson() method를 사용하면 된다.

Example 1

> var dblist=["server01","server02"];
> dblist.forEach(function(e){
	var serviceCollectionData = db.getSiblingDB(e).service.findOne();
	print(serviceCollectionData); // print method 사용
});
[object BSON]
[object BSON]

기본 print method를 사용하면 json text가 보이지 않는다

Example 2

> var dblist=["server01","server02"];
> dblist.forEach(function(e){
	var serviceCollectionData = db.getSiblingDB(e).service.findOne();
	printjson(serviceCollectionData); // printjson method 사용
});
{
	"_id" : ObjectId("566a5445e35a2a967969a081"),
    "name" : "server01",
	"status" : "OK"
}
{
	"_id" : ObjectId("566a5445e35a2a967969a080"),
    "name" : "server02",
	"status" : "OK"
}

printjson method로 bson을 json text로 볼 수 있다.

참고자료

posting : mongodb shell에서 array로 정의한 multi db 검색하기

mongodb document : https://docs.mongodb.com/manual/tutorial/write-scripts-for-the-mongo-shell/#Scriptingtheshell-Printing