क्या मॉनिटर करना है

Edge for Private Cloud v. 4.17.09

आम तौर पर, प्रोडक्शन सेटअप में, निजी क्लाउड डिप्लॉयमेंट के लिए, Apigee Edge में निगरानी के तरीकों को चालू करना ज़रूरी होता है. निगरानी करने की इन तकनीकों से, नेटवर्क एडमिन (या ऑपरेटर) को गड़बड़ी या किसी समस्या के बारे में चेतावनी मिलती है. जनरेट हुई हर गड़बड़ी, Apigee Edge में सूचना के तौर पर रिपोर्ट की जाती है. सूचनाओं के बारे में ज़्यादा जानकारी के लिए, निगरानी करने के सबसे सही तरीके लेख पढ़ें.

आसानी के लिए, Apigee कॉम्पोनेंट को मुख्य रूप से दो कैटगरी में बांटा गया है:

  • Apigee के लिए खास तौर पर बनाई गई Java सर्वर सेवाएं – इनमें मैनेजमेंट सर्वर, मैसेज प्रोसेसर, Qpid सर्वर, और Postgres सर्वर शामिल हैं.
  • तीसरे पक्ष की सेवाएं – इनमें Nginx Router, Apache Cassandra, Apache ZooKeeper, OpenLDAP, PostgreSQL डेटाबेस, और Qpid शामिल हैं.

Apigee Edge को ऑन-प्राइमिस डिप्लॉय करने पर, नीचे दी गई टेबल में उन पैरामीटर के बारे में तुरंत जानकारी मिलती है जिन्हें मॉनिटर किया जा सकता है:

कॉम्पोनेंट

सिस्टम की जांच

प्रोसेस-लेवल के आंकड़े

एपीआई लेवल की जांच

मैसेज फ़्लो की जांच

कॉम्पोनेंट के हिसाब से

Apigee के लिए खास तौर पर काम करने वाली Java सेवाएं

मैनेजमेंट सर्वर

?

?

?

मैसेज प्रोसेसर

?

?

?

?

Qpid सर्वर

?

?

?

Postgres सर्वर

?

?

?

तीसरे पक्ष की सेवाएं

Apache Cassandra

?

?

Apache ZooKeeper

?

?

OpenLDAP

?

?

PostgreSQL डेटाबेस

?

?

Qpid

?

?

Nginx राऊटर

?

?

?

आम तौर पर, Apigee Edge इंस्टॉल होने के बाद, निजी क्लाउड इंस्टॉलेशन के लिए Apigee Edge की परफ़ॉर्मेंस ट्रैक करने के लिए, ये मॉनिटरिंग टास्क किए जा सकते हैं.

सिस्टम की परफ़ॉर्मेंस की जांच

सीपीयू के इस्तेमाल, मेमोरी का इस्तेमाल, और पोर्ट कनेक्टिविटी जैसे सिस्टम की परफ़ॉर्मेंस को बड़े लेवल पर मेज़र करना बहुत ज़रूरी है. सिस्टम की परफ़ॉर्मेंस के बारे में बुनियादी जानकारी पाने के लिए, यहां दिए गए पैरामीटर पर नज़र रखी जा सकती है.

  • सीपीयू (CPU) के इस्तेमाल की जानकारी – इससे सीपीयू के इस्तेमाल के बारे में बुनियादी आंकड़े (उपयोगकर्ता/सिस्टम/आईओ वेट/आइडल) पता चलते हैं. उदाहरण के लिए, सिस्टम के सीपीयू का कुल इस्तेमाल.
  • मुफ़्त/इस्तेमाल की गई मेमोरी – यह सिस्टम की मेमोरी के इस्तेमाल की जानकारी बाइट के तौर पर देता है. उदाहरण के लिए, सिस्टम के लिए इस्तेमाल की जाने वाली फ़िज़िकल मेमोरी.
  • डिस्क का स्टोरेज इस्तेमाल – इससे डिस्क के मौजूदा इस्तेमाल के आधार पर, फ़ाइल सिस्टम की जानकारी मिलती है. उदाहरण के लिए, सिस्टम में हार्ड डिस्क का स्टोरेज इस्तेमाल होता है.
  • लोड औसत – यह उन प्रोसेस की संख्या बताता है जो चलने के लिए इंतज़ार कर रही हैं.
  • नेटवर्क के आंकड़े – किसी खास कॉम्पोनेंट के ट्रांसमिशन से जुड़ी गड़बड़ियों के साथ-साथ, नेटवर्क पैकेट और/या भेजे और पाए गए बाइट की जानकारी.

प्रोसेस/ऐप्लिकेशन की जांच

प्रोसेस के लेवल पर, चल रही सभी प्रोसेस के बारे में अहम जानकारी देखी जा सकती है. उदाहरण के लिए, इनमें मेमोरी और सीपीयू के इस्तेमाल के ऐसे आंकड़े शामिल होते हैं जिनका इस्तेमाल कोई प्रोसेस या ऐप्लिकेशन करता है. qpidd, postgres postmaster, java वगैरह जैसी प्रोसेस के लिए, इन पर नज़र रखी जा सकती है:

  • प्रोसेस की पहचान करना: किसी खास Apigee प्रोसेस की पहचान करना. उदाहरण के लिए, Apigee सर्वर की java प्रोसेस के मौजूद होने की निगरानी की जा सकती है.
  • थ्रेड के आंकड़े: थ्रेडिंग के उन पैटर्न को देखें जिनका इस्तेमाल कोई प्रोसेस करती है. उदाहरण के लिए, सभी प्रोसेस के लिए थ्रेड की संख्या और सबसे ज़्यादा थ्रेड की संख्या को मॉनिटर किया जा सकता है.
  • मेमोरी का इस्तेमाल: Apigee की सभी प्रोसेस के लिए मेमोरी का इस्तेमाल देखें. उदाहरण के लिए, हेप मेमोरी के इस्तेमाल, किसी प्रोसेस के लिए इस्तेमाल की गई नॉन-हेप मेमोरी के इस्तेमाल जैसे पैरामीटर को मॉनिटर किया जा सकता है.

एपीआई लेवल की जांच

एपीआई लेवल पर, यह मॉनिटर किया जा सकता है कि सर्वर चालू है या नहीं. साथ ही, यह भी देखा जा सकता है कि अक्सर इस्तेमाल किए जाने वाले एपीआई कॉल, Apigee से प्रॉक्सी किए गए हैं या नहीं. उदाहरण के लिए, मैनेजमेंट सर्वर, राउटर, और मैसेज प्रोसेसर पर एपीआई की जांच करने के लिए, cURL का यह कमांड इस्तेमाल करें:

curl http://<host>:<port>/v1/servers/self/up

यहां <host>, Apigee Edge कॉम्पोनेंट का आईपी पता है. <port> नंबर, Edge के हर कॉम्पोनेंट के लिए खास होता है. उदाहरण के लिए:

मैनेजमेंट सर्वर: 8080

  • राऊटर: 8081
  • मैसेज प्रोसेसर: 8082
  • वगैरह

हर कॉम्पोनेंट के लिए यह कमांड चलाने के बारे में जानकारी पाने के लिए, नीचे दिए गए अलग-अलग सेक्शन देखें

यह कॉल "सही" और "गलत" वैल्यू दिखाता है. बेहतर नतीजों के लिए, एपीआई कॉल को सीधे बैकएंड पर भी भेजा जा सकता है. बैकएंड वह प्लैटफ़ॉर्म होता है जिससे Apigee सॉफ़्टवेयर इंटरैक्ट करता है. इससे यह तुरंत पता चल जाता है कि गड़बड़ी Apigee सॉफ़्टवेयर के एनवायरमेंट में है या बैकएंड में.

ध्यान दें: अपने एपीआई प्रॉक्सी को मॉनिटर करने के लिए, Apigee के एपीआई Health का भी इस्तेमाल किया जा सकता है. API Health, आपके एपीआई प्रॉक्सी पर शेड्यूल किए गए कॉल करता है. साथ ही, फ़ेल होने पर और उसका तरीका बताने के लिए, आपको इसकी सूचना देता है. कॉल पूरा होने पर, API Health आपको रिस्पॉन्स मिलने में लगने वाले समय की जानकारी दिखाता है. साथ ही, रिस्पॉन्स मिलने में लगने वाला समय ज़्यादा होने पर, आपको इसकी सूचना भी दे सकता है. API Health, अलग-अलग क्षेत्रों के बीच एपीआई के काम करने के तरीके की तुलना करने के लिए, दुनिया भर की अलग-अलग जगहों से कॉल कर सकता है.

मैसेज फ़्लो की जांच

मैसेज फ़्लो के पैटर्न/आंकड़ों के बारे में, राउटर और मैसेज प्रोसेसर से डेटा इकट्ठा किया जा सकता है. इसकी मदद से, इन चीज़ों को मॉनिटर किया जा सकता है:

  • सक्रिय क्लाइंट की संख्या
  • जवाबों की संख्या (10X, 20X, 30X, 40X, और 50X)
  • कनेक्ट न हो पाने की वजहें

इससे, एपीआई मैसेज फ़्लो के लिए डैशबोर्ड उपलब्ध कराने में मदद मिलती है. ज़्यादा जानकारी के लिए, यह देखें:

मैसेज प्रोसेसर के राऊटर की परफ़ॉर्मेंस की जांच

राउटर, हेल्थ जांच करने की सुविधा लागू करता है. इससे यह पता चलता है कि कौनसे मैसेज प्रोसेसर, उम्मीद के मुताबिक काम कर रहे हैं. अगर किसी मैसेज प्रोसेसर के बंद या धीमे होने का पता चलता है, तो राउटर उस मैसेज प्रोसेसर को रोटेशन से अपने-आप हटा सकता है. ऐसा होने पर, राउटर /opt/apigee/var/log/edge-router/logs/system.log में मौजूद राउटर लॉग फ़ाइल में "मार्क डाउन" मैसेज लिखता है.

इन मैसेज के लिए, राउटर की लॉग फ़ाइल को मॉनिटर किया जा सकता है. उदाहरण के लिए, अगर राऊटर किसी मैसेज प्रोसेसर को रोटेशन से बाहर ले जाता है, तो वह लॉग में इस तरह से मैसेज लिखता है:

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = <MP_IP> at 1399409512159

2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /<MP_IP>:<PORT> Mark Down

यहां /<MP_IP>:<PORT>, मैसेज प्रोसेसर का आईपी पता और पोर्ट नंबर होता है.

अगर बाद में राउटर, हेल्थ की जांच करता है और यह पता चलता है कि मैसेज प्रोसेसर ठीक से काम कर रहा है, तो राउटर मैसेज प्रोसेसर को अपने-आप फिर से रोटेशन में डाल देता है. राइटर लॉग में "मार्क अप" मैसेज भी लिखता है. यह मैसेज इस फ़ॉर्मैट में होता है:

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = <IP> at 1399410449054

2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from /<IP>:<PORT> Mark Up