{"id":2427,"date":"2016-11-04T04:06:33","date_gmt":"2016-11-04T04:06:32","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2427"},"modified":"2023-06-23T03:07:09","modified_gmt":"2023-06-23T10:07:09","slug":"monitoring-couchbase","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/monitoring-couchbase\/","title":{"rendered":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ubaa8\ub2c8\ud130\ub9c1"},"content":{"rendered":"<p>\uac1c\uc694<\/p>\n<p class=\"p1\"><span class=\"s1\">\uba87 \ub144 \uc804\uc5d0 \uc800\ub294 \uc5bc\ub9c8\ub098 \ub9ce\uc740 \uace0\uac1d\uc774 Couchbase \ud074\ub7ec\uc2a4\ud130\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud558\ub294\uc9c0\ub97c \ubc18\uc601\ud558\ub294 \ube14\ub85c\uadf8\ub97c \uc791\uc131\ud588\uc2b5\ub2c8\ub2e4(<a href=\"https:\/\/www.couchbase.com\/blog\/ko\/monitoring-couchbase-cluster\/\"><span class=\"s2\">https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-cluster<\/span><\/a>). \ub0a0\uc9dc\uac00 \uc624\ub798\ub418\uc5c8\uc9c0\ub9cc \uc5ec\uc804\ud788 \uad00\ub828\uc131\uc774 \uc788\ub294 \uc815\ubcf4\uc774\ubbc0\ub85c \uc6d0\ubcf8\uc744 \uc5c5\ub370\uc774\ud2b8\ud560 \uc608\uc815\uc785\ub2c8\ub2e4. \uc774 \uc77c\ubc18 \uac1c\uc694\uc5d0 \uc124\uba85\ub41c \ud1b5\uacc4\uc640 \uba54\ud2b8\ub9ad\uc740 \ud2b9\uc815 \uc0ac\uc6a9 \uc0ac\ub840\uc5d0 \ub300\ud55c Couchbase\uc758 \uc0c1\ud0dc\uc640 \uc131\ub2a5\uc744 \uce21\uc815\ud558\uae30 \uc704\ud55c \ubaa8\ub2c8\ud130\ub9c1 \ud504\ub808\uc784\uc6cc\ud06c\uc5d0\uc11c \uc790\uc8fc \uc0ac\uc6a9\ub429\ub2c8\ub2e4. \uadf8 \uc2dc\uc810\ubd80\ud130 \uc6b0\ub9ac\ub294 \uc885\uc885 \uc774\ub7ec\ud55c \ud1b5\uacc4\ub97c \uc0ac\uc6a9\ud558\ub294 \uad6c\ud604 \uc608\uc81c\ub97c \uc694\uccad\ud558\ub294 \uc0ac\ub78c\ub4e4\uc744 \ub9cc\ub098\uac8c \ub429\ub2c8\ub2e4. \uc77c\ubc18\uc801\uc73c\ub85c \uac1c\ubc1c\ud300\uc5d0\uc11c \uc2e4\uc81c\ub85c \ud544\uc694\ub85c \ud558\ub294 \uac83\uc740 \uad11\ubc94\uc704\ud55c \ubaa8\ub2c8\ud130\ub9c1 \ud504\ub808\uc784\uc6cc\ud06c\uac00 \uc544\ub2c8\ub77c \ud65c\uc6a9\ud560 \uc218 \uc788\ub294 \uac04\ub2e8\ud55c \uc2a4\ud06c\ub9bd\ud2b8\uc785\ub2c8\ub2e4. \uc5ec\ub7ec \uae30\ub2a5\uc758 \ud300\uc774 '\uc6cc\ub8f8' \uc124\uc815\uc5d0\uc11c \ubb38\uc81c\ub97c \uc9c4\ub2e8\ud558\uace0 \ud074\ub7ec\uc2a4\ud130 \ub0b4\uc5d0\uc11c \ucd5c\uadfc \uc774\ubca4\ud2b8\ub97c \uac04\ub2e8\ud558\uac8c \ucc98\ub9ac\ud560 \uc218 \uc788\ub294 \ubc29\ubc95\uc744 \uc6d0\ud558\ub294 \uacbd\uc6b0\uac00 \ub9ce\uc2b5\ub2c8\ub2e4.<\/span><\/p>\n<p class=\"p1\">\uc5ec\uae30\uc11c \ubaa9\ud45c\ub294 \ud3ec\uad04\uc801\uc778 \ubaa8\ub378\uc744 \uc81c\uacf5\ud558\ub294 \uac83\uc774 \uc544\ub2c8\ub77c REST API\uc640 \uba85\ub839\uc904 \ub3c4\uad6c\ub97c \ud1b5\ud574 Couchbase \uba54\ud2b8\ub9ad\uc744 \uc18c\ube44\ud558\ub294 \uac04\ub2e8\ud55c \uad6c\ud604 \ubc29\ubc95\uc744 \uc124\uba85\ud558\ub294 \uac83\uc785\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uba54\ud2b8\ub9ad\uc744 \uc815\uae30\uc801\uc73c\ub85c \uc18c\ud654\ud560 \uc218 \uc788\ub294 \ubb34\uc5b8\uac00\ub97c \ub9c8\ub828\ud55c \ud6c4\uc5d0\ub294 \uc774\ub7ec\ud55c \uba54\ud2b8\ub9ad\uc744 \uc5b4\ub518\uac00\uc5d0 \uc800\uc7a5\ud574\uc57c \ud569\ub2c8\ub2e4. \uc774 \ub2e8\uacc4\uc5d0\uc11c\ub294 \uc774\ub7ec\ud55c \uba54\ud2b8\ub9ad\uc744 Couchbase \ubc84\ud0b7\uc5d0 \uc800\uc7a5\ud558\uace0 N1QL\uc744 \uc0ac\uc6a9\ud558\uc5ec \ud2b9\uc815 \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c \uc5b4\ub5a4 \uc77c\uc774 \uc77c\uc5b4\ub098\uace0 \uc788\ub294\uc9c0 \uc774\ud574\ud558\uaca0\uc2b5\ub2c8\ub2e4. \uc774\ub7ec\ud55c \uc720\ud615\uc758 \uc815\ubcf4\ub97c \uc2dc\uac01\ud654\ud558\ub294 \ub2e4\ub978 \ubc29\ubc95\ub3c4 \uc788\uc9c0\ub9cc(https:\/\/www.couchbase.com\/blog\/2016\/march\/http-packages.couchbase.com-releases-4.5.0-dp1-couchbase-server-enterprise_4.5.0-dp1-windows_amd64.exe.md5), \uc774 \uc608\uc5d0\uc11c\ub294 Couchbase \ubaa8\ub2c8\ud130\ub9c1 \ubc0f \uad00\ub828 N1QL \ucffc\ub9ac\uc5d0 \uc911\uc810\uc744 \ub450\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<p class=\"p1\">\uc815\ubcf4 \uc18c\ud654<\/p>\n<p class=\"p1\">\uc800\ub294 \ud300\uc774 \uc774\ud574\ud558\uace0 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 \uad00\ub828\uc131 \uc788\uace0 \uc720\uc6a9\ud55c \uc608\uc81c\ub97c \uc81c\uacf5\ud558\uace0 \uc2f6\uc5c8\uc2b5\ub2c8\ub2e4. \uc885\uc885 \ud30c\uc774\uc36c\uc744 \ud65c\uc6a9\ud558\ub294 \uac83\uc740 \uc0ac\ub78c\ub4e4\uc5d0\uac8c \uce5c\uc219\ud558\uace0 \ub2e4\uc591\ud55c \uc2dc\uc2a4\ud15c\uc5d0\uc11c \uc27d\uac8c \uad6c\ud604\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubb3c\ub860 \uc178\uc774\ub098 \uac70\uc758 \ubaa8\ub4e0 \uc5b8\uc5b4\uc5d0\uc11c \ub3d9\uc77c\ud55c \ubc29\ubc95\uc744 \ud65c\uc6a9\ud560 \uc218 \uc788\uc9c0\ub9cc, \uc77c\ubc18\ud654\ub41c \ub17c\uc758\uc5d0\ub294 Python\uc774 \uc790\uc5f0\uc2a4\ub7fd\uac8c \uc801\ud569\ud574 \ubcf4\uc600\uc2b5\ub2c8\ub2e4.<\/p>\n<p class=\"p1\">\uc804\uccb4 \ucf54\ub4dc\ub294 \uc5ec\uae30\uc5d0\uc11c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4... <span class=\"repo-root js-repo-root\" style=\"font-weight: bold;color: #767676;font-family: -apple-system, BlinkMacSystemFont,\"><span class=\"js-path-segment\"><a style=\"color: #4078c0;text-decoration: none\" href=\"https:\/\/github.com\/justinmichaels006\/pythonlab\"><span>pythonlab<\/span><\/a><\/span><\/span><span class=\"separator\" style=\"color: #767676;font-family: -apple-system, BlinkMacSystemFont,\">\/<\/span><span class=\"final-path\" style=\"font-weight: 600;color: #333333;font-family: -apple-system, BlinkMacSystemFont,\">MonitorStats.py\u00a0<\/span><span style=\"color: #333333;text-align: left\">... \ud558\uc9c0\ub9cc Couchbase\uc5d0\uc11c \uc815\ubcf4\ub97c \uc218\uc9d1\ud558\ub294 \ub2e4\uc591\ud55c \ubc29\ubc95\uacfc \uba87 \uac00\uc9c0 \uc138\ubd80 \uc0ac\ud56d\uc744 \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/span><\/p>\n<p class=\"p1\"><span style=\"color: #333333;text-align: left\">\uac00\uc7a5 \uba3c\uc800 \uc124\uc815\ud574\uc57c \ud560 \uac83\uc740 binPath\uac00 \uc81c\uacf5\ud558\ub294 \ub85c\uceec Couchbase \ubc14\uc774\ub108\ub9ac\ub97c \ucc3e\uc744 \uc218 \uc788\ub294 \uc704\uce58\uc785\ub2c8\ub2e4.<\/span><\/p>\n<pre><code># binPath = \"C:Program FilesCouchbase Server\"\r\nbinPath = \"\/Applications\/couchbase-server-enterprise_4\/Couchbase Server.app\/Contents\/Resources\/couchbase-core\/bin\"\r\n# binPath = \"\/opt\/couchbase\/bin\"<\/code><\/pre>\n<p class=\"p1\">\uad00\ub9ac UI\ub294 Couchbase\uc758 \ud6cc\ub96d\ud55c \uae30\ub2a5\uc73c\ub85c Couchbase \ud074\ub7ec\uc2a4\ud130\uc758 \ubaa8\ub4e0 \ub178\ub4dc\uc5d0 \uae30\ubcf8\uc801\uc73c\ub85c \uc124\uce58\ub418\uc9c0\ub9cc, \uc774 \uc778\ud130\ud398\uc774\uc2a4\ub294 \ud074\ub7ec\uc2a4\ud130\uc758 \"\ud604\uc7ac \uc0c1\ud669\"\uc5d0 \ub300\ud55c \ubcf4\uae30\ub97c \uc81c\uacf5\ud558\ub3c4\ub85d \uc124\uacc4\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \ud1b5\uacc4\ub294 \ud074\ub7ec\uc2a4\ud130\uc5d0 \uc758\ud574 \uc2dc\uac04\uc5d0 \ub530\ub77c \uc9d1\uacc4\ub418\uba70 \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c '\ubb34\uc2a8 \uc77c\uc774 \uc77c\uc5b4\ub0ac\ub294\uc9c0'\ub97c \uac80\ud1a0\ud558\uae30 \uc704\ud55c \uc138\ubd80\uc801\uc778 \uc815\ubcf4\ub294 \uc81c\uacf5\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc65c\ub0d0\ud558\uba74<span style=\"color: #333333;text-align: left\">Couchbase \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c \uc2e4\uc2dc\uac04\uc73c\ub85c \uc0dd\uc131\ub418\ub294 \ud1b5\uacc4\ub97c \uc0ac\uc6a9\ud558\ub824\uba74 \uacb0\uacfc\ub97c \uc800\uc7a5\ud560 \uacf3\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. \ub2e4\ub978 \uc635\uc158\ub3c4 \uc788\uc744 \uc218 \uc788\uc9c0\ub9cc, \uc5ec\uae30\uc11c\ub294 \uacfc\uac70 \ud1b5\uacc4\ub97c \uc800\uc7a5\ud558\ub294 \ub370 Couchbase\ub97c \uc0ac\uc6a9\ud558\uaca0\uc2b5\ub2c8\ub2e4. \ud1b5\uacc4\ub97c \uc800\uc7a5\ud558\ub294 \ub370 \uc0ac\uc6a9\ud560 \ud074\ub7ec\uc2a4\ud130\ub294 seedNode\uc640 seedBucket\uc73c\ub85c \uc81c\uc5b4\ub429\ub2c8\ub2e4(Couchbase SDK\ub294 \ud074\ub7ec\uc2a4\ud130\uc758 \ubaa8\ub4e0 \ub178\ub4dc\uc5d0 \ub300\ud55c \uc5f0\uacb0\uc744 \uc0dd\uc131\ud558\ub294 \ub370 \ud558\ub098\uc758 \ub178\ub4dc\uc640 \ubc84\ud0b7 \uc774\ub984\ub9cc \ud544\uc694\ud569\ub2c8\ub2e4).<\/span><\/p>\n<pre><code>seedNode = \"192.168.61.101\"\r\nseedBucket = \"testload\"<\/code><\/pre>\n<p class=\"p1\"><span style=\"color: #333333;text-align: left\">\u00a0\uc774 \uc2a4\ud06c\ub9bd\ud2b8\ub294 \ud074\ub7ec\uc2a4\ud130\uc758 \uac01 \ub178\ub4dc\uc5d0\uc11c \ub85c\uceec\ub85c \uc2e4\ud589\ub418\uba70 \ud574\ub2f9 \ub178\ub4dc\uc758 \uc0c1\ud0dc\uc640 \ud074\ub7ec\uc2a4\ud130 \ubcf4\uae30\uc5d0 \ub300\ud55c \ud1b5\uacc4 \ud504\ub85c\ud544\uc744 \ucea1\ucc98\ud569\ub2c8\ub2e4. \uacb0\uacfc\uc801\uc73c\ub85c \ubaa8\ub2c8\ud130\ub9c1 \uc911\uc778 \ud074\ub7ec\uc2a4\ud130\ub294 \"localhost\"\ub85c \uc815\uc758\ub418\uace0 Couchbase REST API\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub85c\uceec \ud638\uc2a4\ud2b8\uc758 \uc774\ub984\uc744 \ud655\uc778\ud569\ub2c8\ub2e4.<\/span><\/p>\n<pre><code>clusterNode = \"localhost\"<\/code><\/pre>\n<p>\ubaa8\ub4e0 \uac83\uc740 \uc2a4\ud06c\ub9bd\ud2b8\uac00 \uc2e4\ud589 \uc911\uc778 \ub178\ub4dc\uc640 \ud074\ub7ec\uc2a4\ud130\ub97c \uad6c\uc131\ud558\ub294 \ub178\ub4dc \uc218\ub97c \uc774\ud574\ud558\ub294 \ub370 \uae30\ubc18\ud569\ub2c8\ub2e4. \uc5ec\uae30\uc11c\ub294 \uc774 \uc815\ubcf4\ub97c \ucea1\ucc98\ud558\uc5ec \ubaa8\ub2c8\ud130\ub9c1 \uc2a4\ud06c\ub9bd\ud2b8\uc758 \ub098\uba38\uc9c0 \ubd80\ubd84\uc744 \uad6c\ub3d9\ud560 \uac83\uc785\ub2c8\ub2e4.<\/p>\n<pre><code>numNodes = int(commands.getoutput(\"curl -s -u Administrator:password https:\/\/\" + clusterNode + \":8091\/pools\/default |jq '.nodes | length'\"))\r\nfor i in range(0,numNodes-1):\r\n    rtn = requests.get('https:\/\/Administrator:password@' + clusterNode + ':8091\/pools\/default')\r\n    if rtn.status_code != 200:\r\n        # This means something went wrong.\r\n        print(\"oh crap \" + rtn.status_code)\r\n    z = json.loads(rtn.text)\r\n    ctr = str((json.dumps(z['nodes'][i]['thisNode'])))\r\n    #ctr = (str(commands.getoutput(\"curl -s -u Administrator:password https:\/\/\" + clusterNode + \":8091\/pools\/default |jq .nodes[\" + str(i) + \"].thisNode\")))\r\n    if ctr == \"true\":\r\n        thisNode = (str(commands.getoutput(\"curl -s -u Administrator:password https:\/\/\" + clusterNode + \":8091\/pools\/default |jq .nodes[\" + str(i) + \"].otpNode\")))\r\n        thisNode = thisNode.split(\"@\")[1]\r\n        thisNode = thisNode.split(\"\"\")[0]\r\n        #print (\"this node\" + str(thisNode))<\/code><\/pre>\n<p>\ub098\uba38\uc9c0 \uc2a4\ud06c\ub9bd\ud2b8\uc5d0\uc11c\ub294 \uc774\uc81c \uba87 \uac00\uc9c0 \ub2e4\ub978 \ubc29\ubc95\uc73c\ub85c \ud2b9\uc815 \ud1b5\uacc4\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc5ec\uae30\uc11c\ub294 Couchbase \uc720\ud2f8\ub9ac\ud2f0 cbstats\uc5d0\uc11c \uc815\ubcf4\ub97c \uac00\uc838\uc624\uac70\ub098 REST API\uc5d0\uc11c \uc9c1\uc811 \uac00\uc838\uc62c \uac83\uc785\ub2c8\ub2e4. \uc5ec\uae30\uc11c\ub294 cbstats\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub178\ub4dc\uc758 \uba54\ubaa8\ub9ac \uc0ac\uc6a9\ub960\uc744 \uc5bb\uace0 Python REST \ud074\ub77c\uc774\uc5b8\ud2b8(\uc694\uccad)\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub4dc\ub798\uc778 \ud050\ub97c \uac00\uc838\uc640\uc11c \ud074\ub7ec\uc2a4\ud130\uac00 \ub514\uc2a4\ud06c\uc5d0 \ub370\uc774\ud130\ub97c \uc9c0\uc18d\ud558\ub294 \ubc29\ubc95\uc744 \uce21\uc815\ud569\ub2c8\ub2e4. \uc774\ub294 Couchbase \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c \ubaa8\ub2c8\ud130\ub9c1\ud574\uc57c \ud560 \uac00\uc7a5 \uc911\uc694\ud55c \ud1b5\uacc4 \uc911 \uc77c\ubd80\uc785\ub2c8\ub2e4.<\/p>\n<pre><code>memUsed = int(commands.getoutput(binPath + '\/cbstats ' + str(thisNode) + ':11210 -b ' + clusterBucket + ' all -j |jq .mem_used'))\r\n\r\n# diskDrain = commands.getoutput(\"curl -s -u Administrator:password https:\/\/\" + seedNode + \":8091\/pools\/default\/buckets\/testload\/stats |jq .op.samples.ep_diskqueue_drain[59]\")\r\n# Drain Queue via REST API\r\nresp = requests.get('https:\/\/Administrator:password@' + str(thisNode) + ':8091\/pools\/default\/buckets\/' + clusterBucket + '\/stats')\r\nif resp.status_code != 200:\r\n    # This means something went wrong.\r\n    print(\"oh crap \" + resp.status_code)\r\na = json.loads(resp.text)\r\ndiskDrain = int((json.dumps(a['op']['samples']['ep_diskqueue_drain'][0], indent=4, separators=(',', ': '))))<\/code><\/pre>\n<p>\uc2e4\uc81c \uc2a4\ud06c\ub9bd\ud2b8\ub294 \ucd94\uac00 \uc815\ubcf4\ub97c \ubcf4\uc5ec \uc8fc\uc9c0\ub9cc \uad81\uadf9\uc801\uc73c\ub85c \ubaa8\ub4e0 \uac83\uc744 JSON \ubb38\uc11c\ub85c \ucea1\ucc98\ud558\uace0 <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/how-to-manage-ttl-with-couchbase-n1ql\/\">TTL<\/a> \ub97c 30\uc77c \ub3d9\uc548 \uc0ac\uc6a9\ud558\uc138\uc694.<\/p>\n<pre><code>json_str = {\r\n        'type': \"stats\",\r\n        'flush': flushFail,\r\n        'drain': diskDrain,\r\n        'OOM': tempOOM,\r\n        'miss': cacheMiss,\r\n        'memory': memUsed,\r\n        'operations': opsPer,\r\n        'nodes': nodeHealth\r\n    }\r\n\r\ncb.upsert(str(thisNode) + \"::\" + nowStamp, json_str, ttl=2505600)<\/code><\/pre>\n<p>Couchbase\uc758 \ubaa8\ub2c8\ud130\ub9c1 \ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud558\uba74 N1QL \ucffc\ub9ac \uc5b8\uc5b4\ub97c \ud1b5\ud574 \uc5b4\ub178\uba40\ub9ac\ub97c \ucc3e\uae30 \uc704\ud574 \ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub370\uc774\ud130 \uc790\uccb4\ub294 \ud0c0\uc784\uc2a4\ud0ec\ud504\uc5d0 \uae30\ubc18\ud55c \uc2dc\uacc4\uc5f4 \ub370\uc774\ud130 \ubaa8\ub378\uc744 \uc0ac\uc6a9\ud558\uace0 \uc788\uc73c\ubbc0\ub85c \ud074\ub7ec\uc2a4\ud130\uc5d0\uc11c \uc77c\uc5b4\ub098\ub294 \uc77c\uc744 \ucffc\ub9ac\ud560 \uc218 \uc788\uc73c\uba70, KEY(meta.id)\ub294 \uad00\uc2ec \uc788\ub294 \uae30\uac04\uc744 \ud45c\uc2dc\ud574 \uc90d\ub2c8\ub2e4. \ubd84\uc11d\uc744 \uc9c0\uc6d0\ud558\ub294 \ub370 \ud544\uc694\ud55c \uc778\ub371\uc2a4\uc5d0 \ub300\ud574 \ud604\uba85\ud574\uc57c \ud560 \uc218\ub3c4 \uc788\uc9c0\ub9cc, Couchbase \ucffc\ub9ac \uc5b8\uc5b4\uc778 N1QL\uc744 \ud65c\uc6a9\ud558\uba74 \ub9e4\uc6b0 \uc27d\uac8c \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<pre><code>SELECT meta().id, operations FROM `testload` WHERE OOM = 0<\/code><\/pre>\n<p>\uacb0\ub860:<\/p>\n<p>\uc774\uac83\uc740 \ud504\ub85c\ub355\uc158\uc5d0 \uc801\uc6a9\ud574\uc57c \ud558\ub294 \uac83\uc740 \uc544\ub2c8\uc9c0\ub9cc Couchbase \ud658\uacbd\uc744 \ubaa8\ub2c8\ud130\ub9c1\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud55c \uc9c0\uce68\uc744 \uc81c\uacf5\ud574\uc57c \ud569\ub2c8\ub2e4. REST \uc778\ud130\ud398\uc774\uc2a4\uc640 cbstats\ub97c \ud1b5\ud574 \ub9ce\uc740 \uac83\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc73c\uba70, \ubaa8\ub450 \ube44\uc2b7\ud55c \ubc29\uc2dd\uc73c\ub85c \uc18c\ube44\ud558\uace0 \ubaa8\ub2c8\ud130\ub9c1\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>","protected":false},"excerpt":{"rendered":"<p>OVERVIEW Several years ago I wrote a blog that reflects how many customers\u00a0monitor their Couchbase clusters (https:\/\/www.couchbase.com\/blog\/monitoring-couchbase-cluster). Albeit dated, the information is still relevant and we\u2019ll be updating that original. The statistics and metrics outlined in that general overview are [&hellip;]<\/p>","protected":false},"author":47,"featured_media":13873,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816],"tags":[],"ppma_author":[9021],"class_list":["post-2427","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Monitoring Couchbase Cluster Environment - Overview<\/title>\n<meta name=\"description\" content=\"The post focuses on how to store the metrics in a Couchbase bucket and use N1QL to understand what\u2019s happening in a given cluster.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/monitoring-couchbase\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Couchbase Monitoring\" \/>\n<meta property=\"og:description\" content=\"The post focuses on how to store the metrics in a Couchbase bucket and use N1QL to understand what\u2019s happening in a given cluster.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/monitoring-couchbase\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-11-04T04:06:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-23T10:07:09+00:00\" \/>\n<meta name=\"author\" content=\"Justin Michaels, Solutions Engineer, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Justin Michaels, Solutions Engineer, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/\"},\"author\":{\"name\":\"Justin Michaels, Solutions Engineer, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3953b54b90c8d9474f4d88b142db9fc5\"},\"headline\":\"Couchbase Monitoring\",\"datePublished\":\"2016-11-04T04:06:32+00:00\",\"dateModified\":\"2023-06-23T10:07:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/\"},\"wordCount\":816,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"articleSection\":[\"Couchbase Server\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/\",\"name\":\"Monitoring Couchbase Cluster Environment - Overview\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"datePublished\":\"2016-11-04T04:06:32+00:00\",\"dateModified\":\"2023-06-23T10:07:09+00:00\",\"description\":\"The post focuses on how to store the metrics in a Couchbase bucket and use N1QL to understand what\u2019s happening in a given cluster.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png\",\"width\":1800,\"height\":630},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Couchbase Monitoring\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3953b54b90c8d9474f4d88b142db9fc5\",\"name\":\"Justin Michaels, Solutions Engineer, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/19d2966da4f60b608ab69fc089913195\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2fac3118ab1e1f4f03a854b0d78d7746cc0bc8af09381abd362a6d1071a10e54?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2fac3118ab1e1f4f03a854b0d78d7746cc0bc8af09381abd362a6d1071a10e54?s=96&d=mm&r=g\",\"caption\":\"Justin Michaels, Solutions Engineer, Couchbase\"},\"description\":\"Justin Michaels is a Solutions Engineer at Couchbase. His primary responsibilities involve supporting the Couchbase user community help drives customer success.\",\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/justin-michaels\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Monitoring Couchbase Cluster Environment - Overview","description":"The post focuses on how to store the metrics in a Couchbase bucket and use N1QL to understand what\u2019s happening in a given cluster.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/monitoring-couchbase\/","og_locale":"ko_KR","og_type":"article","og_title":"Couchbase Monitoring","og_description":"The post focuses on how to store the metrics in a Couchbase bucket and use N1QL to understand what\u2019s happening in a given cluster.","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/monitoring-couchbase\/","og_site_name":"The Couchbase Blog","article_published_time":"2016-11-04T04:06:32+00:00","article_modified_time":"2023-06-23T10:07:09+00:00","author":"Justin Michaels, Solutions Engineer, Couchbase","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Justin Michaels, Solutions Engineer, Couchbase","Est. reading time":"5\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/"},"author":{"name":"Justin Michaels, Solutions Engineer, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3953b54b90c8d9474f4d88b142db9fc5"},"headline":"Couchbase Monitoring","datePublished":"2016-11-04T04:06:32+00:00","dateModified":"2023-06-23T10:07:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/"},"wordCount":816,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","articleSection":["Couchbase Server"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/","url":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/","name":"Monitoring Couchbase Cluster Environment - Overview","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","datePublished":"2016-11-04T04:06:32+00:00","dateModified":"2023-06-23T10:07:09+00:00","description":"The post focuses on how to store the metrics in a Couchbase bucket and use N1QL to understand what\u2019s happening in a given cluster.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2022\/11\/couchbase-nosql-dbaas.png","width":1800,"height":630},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/monitoring-couchbase\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Couchbase Monitoring"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/3953b54b90c8d9474f4d88b142db9fc5","name":"\uc800\uc2a4\ud2f4 \ub9c8\uc774\ud074\uc2a4, \uc194\ub8e8\uc158 \uc5d4\uc9c0\ub2c8\uc5b4, Couchbase","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/19d2966da4f60b608ab69fc089913195","url":"https:\/\/secure.gravatar.com\/avatar\/2fac3118ab1e1f4f03a854b0d78d7746cc0bc8af09381abd362a6d1071a10e54?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2fac3118ab1e1f4f03a854b0d78d7746cc0bc8af09381abd362a6d1071a10e54?s=96&d=mm&r=g","caption":"Justin Michaels, Solutions Engineer, Couchbase"},"description":"\uc800\uc2a4\ud2f4 \ub9c8\uc774\ud074\uc2a4\ub294 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc758 \uc194\ub8e8\uc158 \uc5d4\uc9c0\ub2c8\uc5b4\uc785\ub2c8\ub2e4. \uadf8\uc758 \uc8fc\uc694 \uc5c5\ubb34\ub294 \uace0\uac1d \uc131\uacf5\uc744 \ucd09\uc9c4\ud558\ub294 Couchbase \uc0ac\uc6a9\uc790 \ucee4\ubba4\ub2c8\ud2f0\ub97c \uc9c0\uc6d0\ud558\ub294 \uac83\uc785\ub2c8\ub2e4.","url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/justin-michaels\/"}]}},"authors":[{"term_id":9021,"user_id":47,"is_guest":0,"slug":"justin-michaels","display_name":"Justin Michaels, Solutions Engineer, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/2fac3118ab1e1f4f03a854b0d78d7746cc0bc8af09381abd362a6d1071a10e54?s=96&d=mm&r=g","first_name":"Justin","last_name":"Michaels","user_url":"","author_category":"","description":"\uc800\uc2a4\ud2f4 \ub9c8\uc774\ud074\uc2a4\ub294 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc758 \uc194\ub8e8\uc158 \uc5d4\uc9c0\ub2c8\uc5b4\uc785\ub2c8\ub2e4. \uadf8\uc758 \uc8fc\uc694 \uc5c5\ubb34\ub294 \uace0\uac1d \uc131\uacf5\uc744 \ucd09\uc9c4\ud558\ub294 Couchbase \uc0ac\uc6a9\uc790 \ucee4\ubba4\ub2c8\ud2f0\ub97c \uc9c0\uc6d0\ud558\ub294 \uac83\uc785\ub2c8\ub2e4."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2427","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/47"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=2427"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2427\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/13873"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=2427"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=2427"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=2427"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=2427"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}