Stackdriver की मॉनिटरिंग और लॉगिंग का इस्तेमाल करके, अपने ऐप्लिकेशन की परफ़ॉर्मेंस के बारे में बेहतर जानकारी पाना

इस कोडलैब में, आपको Google Cloud Platform की सेवाओं और वर्चुअल मशीन (वीएम) के लिए, परफ़ॉर्मेंस मेट्रिक और लॉग की निगरानी करने और उनकी समीक्षा करने के लिए, Stackdriver का इस्तेमाल शुरू करने का तरीका बताया जाएगा.

इस कोडलैब में आपको

  • Stackdriver के होम पेज के बारे में जानें.
  • डैशबोर्ड और चार्ट को समझना.
  • अपटाइम चेक बनाएं.
  • सूचना पाने से जुड़ी आसान नीति बनाएं.
  • चेतावनी से जुड़ी घटनाओं के साथ काम करना.
  • लॉग व्यूअर पर नेविगेट करना.

Stackdriver का इस्तेमाल करने का आपका अनुभव कैसा रहा?

निगरानी - यह क्या है? मैंने पहले कभी Stackdriver का इस्तेमाल नहीं किया है, लेकिन मेरे पास ऐप्लिकेशन की निगरानी करने का अनुभव है. मैंने Stackdriver का इस्तेमाल किया है, लेकिन इसके बारे में ज़्यादा नहीं जानता.

अपनी रफ़्तार से सीखने के लिए एनवायरमेंट सेटअप करना

अगर आपके पास पहले से कोई Google खाता (Gmail या Google Apps) नहीं है, तो आपको एक खाता बनाना होगा.

Google Cloud Platform Console (console.developers.google.com) में साइन इन करें और एक नया प्रोजेक्ट बनाएं:

प्रोजेक्ट आईडी याद रखें. यह सभी Google Cloud प्रोजेक्ट के लिए एक यूनीक नाम होता है. इस कोड लैब में इसे बाद में PROJECT_ID के तौर पर दिखाया जाएगा.

बहुत ज़रूरी है - Compute Engine API को चालू करने के लिए, Compute Engine पेज पर जाएं:

इसके बाद: Compute → Compute Engine → वीएम इंस्टेंस

पहली बार ऐसा करने पर, आपको एक स्क्रीन दिखेगी. इस पर यह मैसेज होगा: "Compute Engine तैयार हो रहा है. इसमें एक मिनट या उससे ज़्यादा समय लग सकता है". नीचे दिए गए Google Cloud Shell में लॉग इन किया जा सकता है. हालांकि, इस कार्रवाई के पूरा होने तक वीएम नहीं बनाए जा सकते.

आपको ज़्यादातर काम Google Cloud Shell से करना होगा. यह क्लाउड में चलने वाला कमांड लाइन एनवायरमेंट है. Debian पर आधारित इस वर्चुअल मशीन में, आपको डेवलपमेंट के लिए ज़रूरी सभी टूल मिलेंगे. साथ ही, इसमें 5 जीबी की होम डायरेक्ट्री होती है. स्क्रीन पर सबसे ऊपर दाईं ओर मौजूद आइकॉन पर क्लिक करके, Google Cloud Shell खोलें:

आखिर में, Cloud Shell का इस्तेमाल करके डिफ़ॉल्ट ज़ोन और प्रोजेक्ट कॉन्फ़िगरेशन सेट करें:

$ gcloud config set compute/zone us-central1-b
$ gcloud config set compute/region us-central

आपके पास अलग-अलग ज़ोन चुनने का विकल्प भी है. रीजन और ज़ोन के दस्तावेज़ में ज़ोन के बारे में ज़्यादा जानें.

इस सेक्शन में, Cloud Launcher का इस्तेमाल करके, nginx+ चलाने वाले Compute Engine इंस्टेंस बनाए जाएंगे. निगरानी और सूचनाएं दिखाने के लिए, हमें इन उदाहरणों की ज़रूरत होगी. ग्राफ़िकल कंसोल या कमांड लाइन से Compute Engine इंस्टेंस बनाया जा सकता है. इस लैब में, आपको कमांड लाइन के बारे में जानकारी मिलेगी.

अब शुरू करते हैं.

अपना प्रोजेक्ट आईडी सेट करने के लिए, gcloud का इस्तेमाल करें:

$ gcloud config set project PROJECT_ID



इसके बाद, इसे कॉपी करके चिपकाएं:

$ for i in {1..3}; do \
gcloud compute instances create "nginx-plus-$i" \
--machine-type "n1-standard-1" \
--metadata  "google-cloud-marketplace-solution-key=nginx-public:nginx-plus" \
--maintenance-policy "MIGRATE" --scopes default="https://www.googleapis.com/auth/cloud-platform" \
--tags "http-server","google-cloud-marketplace" \
--image "https://www.googleapis.com/compute/v1/projects/nginx-public/global/images/nginx-plus-ubuntu1404-v20150916-final" \
--boot-disk-size "10" --boot-disk-type "pd-standard" \
--boot-disk-device-name "nginx-plus-$i"; done

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

NAME         ZONE          MACHINE_TYPE  PREEMPTIBLE INTERNAL_IP EXTERNAL_IP     STATUS
nginx-plus-1 us-central1-b n1-standard-2                X.X.X.X  X.X.X.X      RUNNING
...

EXTERNAL_IP को नोट कर लें. यह बाद में काम आएगा.

इन कार्रवाइयों को पूरा होने में कुछ मिनट लग सकते हैं.

डिफ़ॉल्ट रूप से, Google Cloud Platform सिर्फ़ कुछ पोर्ट ऐक्सेस करने की अनुमति देता है. हम जल्द ही Nginx को ऐक्सेस करेंगे. इसलिए, फ़ायरवॉल कॉन्फ़िगरेशन में पोर्ट 80 को चालू करें:

$ gcloud compute firewall-rules create allow-80 --allow tcp:80 --target-tags "http-server"
Created [...].
NAME     NETWORK SRC_RANGES RULES  SRC_TAGS TARGET_TAGS
allow-80 default 0.0.0.0/0  tcp:80 http-server

इससे allow-80 नाम का फ़ायरवॉल नियम बन जाएगा. इसमें ये डिफ़ॉल्ट वैल्यू होंगी:

  • इनबाउंड कनेक्शन (--source-ranges) बनाने की अनुमति वाले आईपी पतों की सूची को 0.0.0.0/0 (हर जगह) पर सेट किया गया है.
  • नेटवर्क पर मौजूद इंस्टेंस के सेट को दिखाने वाले इंस्टेंस टैग की सूची को 'कोई नहीं' पर सेट किया गया है. इसका मतलब है कि फ़ायरवॉल का नियम सभी इंस्टेंस पर लागू होता है.

सभी डिफ़ॉल्ट देखने के लिए, gcloud compute firewall-rules create --help चलाएं.

पहला इंस्टेंस बनाने के बाद, यह टेस्ट किया जा सकता है कि nginx चल रहा है या नहीं और इसे ऐक्सेस किया जा सकता है या नहीं. इसके लिए, http://EXTERNAL_IP/ पर जाएं. यहां EXTERNAL_IP, nginx-plus-1 का सार्वजनिक आईपी है. आपको Nginx पेज दिखना चाहिए:

इसके अलावा, चालू इंस्टेंस देखने के लिए यह टाइप करें:

$ gcloud compute instances list

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

अगले चरणों में, आपको Stackdriver को चालू करने और कंसोल का इस्तेमाल करने के बारे में बताया जाएगा.

डिफ़ॉल्ट रूप से, Google Stackdriver फ़िलहाल बीटा वर्शन में है और नए प्रोजेक्ट के लिए चालू नहीं है. इसे चालू करने के लिए, बाईं ओर मौजूद नेविगेशन बार पर जाएं और "मॉनिटरिंग" पर क्लिक करें. इसे ढूंढने के लिए, आपको नीचे की ओर स्क्रोल करना पड़ सकता है

अगली स्क्रीन पर, "निगरानी की सुविधा चालू करें" पर क्लिक करें. इसके बाद, इस सुविधा के चालू होने का इंतज़ार करें.

यह सुविधा चालू होने के बाद, कॉन्टेंट बदल जाएगा और आपको नीचे दिया गया टेक्स्ट दिखेगा. एक्सप्लोर करना शुरू करने के लिए, "निगरानी पर जाएं" पर क्लिक करें! आपको Google खाते से लॉग इन करना होगा. इसके बाद, आपको अपने प्रोजेक्ट के लिए Stackdriver Console पर ले जाया जाएगा. यहां आपको मॉनिटरिंग से जुड़े टास्क पूरे करने और उनका विश्लेषण करने का विकल्प मिलेगा.

आइए, होम पेज के बारे में जानते हैं.

  1. सबसे ऊपर मौजूद मेन्यू: इसका इस्तेमाल अलग-अलग व्यू / संदर्भ चुनने और Stackdriver की सभी उपलब्ध कार्रवाइयों को ऐक्सेस करने के लिए किया जाता है.
  2. डैशबोर्ड: ये मॉनिटर की जा रही मेट्रिक और इवेंट के डैशबोर्ड होते हैं. शुरुआत में, ये आपके प्रोजेक्ट में मौजूद संसाधनों के आधार पर, सिस्टम के पहले से तय किए गए डैशबोर्ड होते हैं. हालांकि, आपके पास अपने कस्टम डैशबोर्ड बनाने का विकल्प भी होता है.
  3. अपटाइम की जांच: ये समय-समय पर, उपयोगकर्ताओं के लिए उपलब्ध संसाधनों की जांच करते हैं. साथ ही, जब ये संसाधन उपलब्ध नहीं होते हैं, तब सूचनाएं पाने की सुविधा चालू करते हैं.
  4. ग्रुप की सूची: ग्रुप का इस्तेमाल, एक जैसी प्रॉपर्टी और विशेषताएं शेयर करने वाले संसाधनों को एक साथ ग्रुप करने के लिए किया जाता है. इससे उन्हें मॉनिटर करने और सूचनाएं पाने जैसे कामों के लिए, ग्रुप या क्लस्टर के तौर पर मैनेज किया जा सकता है. इनका अपने-आप पता लगाया जा सकता है. साथ ही, इन्हें उपयोगकर्ता भी तय कर सकते हैं.
  5. इंसिडेंट पैनल: यह पैनल, सूचना देने वाले इंसिडेंट को ट्रैक करता है. सूचना देने से जुड़ी नीतियां तय करने से पहले, आपको यहां कुछ भी नहीं दिखेगा.
  6. इवेंट लॉग: इसमें उन इवेंट की सूची होती है जो मॉनिटर किए जा रहे संसाधनों से जुड़े होते हैं. उदाहरण के लिए, इंस्टेंस में बदलाव, घटना से जुड़े इवेंट वगैरह.

चार्ट की जांच करने से पहले, आपको दिखेगा कि इंस्टेंस के शुरू होने के बाद, ज़्यादातर लाइनें फ़्लैट हो गई हैं. आइए, देखते हैं कि क्या हम किसी इंस्टेंस पर कुछ लोड जनरेट करके, इनमें से कुछ को "अन-फ़्लैटन" कर सकते हैं.

Cloud Shell कमांड लाइन से इंस्टेंस में एसएसएच करने के लिए:

$ gcloud compute ssh nginx-plus-1
...
Do you want to continue (Y/n)? Y
...
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): [Hit Enter]
Enter same passphrase again: [Hit Enter]
...

yourusername@nginx-plus-1:~$

बस इतना ही! यह बहुत आसान है. (प्रोडक्शन में, पक्का करें कि आपने लंबा पासवर्ड डाला हो :) यह भी ध्यान दें कि आपको लंबा पासवर्ड जोड़ने के लिए कहा नहीं जा सकता.

इसके अलावा, Compute Engine > वीएम इंस्टेंस पर जाकर और एसएसएच पर क्लिक करके, सीधे कंसोल से इंस्टेंस में एसएसएच किया जा सकता है.

In the SSH window, type:

yourusername@nginx-plus-1:~$ sudo apt-get install rand
yourusername@nginx-plus-1:~$ for i in {1..10}; do dd if=/dev/zero of=/dev/null count=$(rand -M 80)M; sleep 60; done &

अब nginx-plus-1 इंस्टेंस का सीपीयू लोड हो रहा है. हम Stackdriver डैशबोर्ड टैब पर वापस जाकर एक्सप्लोर करना शुरू कर सकते हैं. हालांकि, Stackdriver डैशबोर्ड पेज पर वापस जाने से पहले, Cloud Logging एजेंट को इंस्टॉल कर लेते हैं.

Fetch and install the script:

yourusername@nginx-plus-1:~$ curl -sS https://dl.google.com/cloudagents/add-logging-agent-repo.sh | sudo bash /dev/stdin --also-install

ध्यान दें कि प्रोडक्शन में इंस्टॉल करते समय, SHA-256 हैश की जांच ज़रूर करें. इंस्टॉल करने की प्रोसेस के बारे में ज़्यादा जानकारी यहां मिल सकती है.

अब Google Stackdriver कंसोल पर वापस जाने का समय है.

डैशबोर्ड और चार्ट को नेविगेट करने और उनका इस्तेमाल करने के बारे में जानें. चार्ट की लाइनों पर कर्सर घुमाकर देखें कि क्या होता है. चार्ट के लिए समय की अवधि बदलें. इसके कंट्रोल, सबसे ऊपर दाएं कोने में मौजूद होते हैं. कंसोल में सबसे ऊपर बाईं ओर मौजूद Stackdriver के लोगो पर क्लिक करके, "होम पेज" व्यू पर वापस जाया जा सकता है.

सीपीयू के इस्तेमाल का चार्ट देखें:

चार्ट में ये एलिमेंट शामिल हैं:

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

अपटाइम की जांच करने की सुविधा की मदद से, किसी भी वेब पेज, इंस्टेंस या संसाधनों के ग्रुप की स्थिति की तुरंत पुष्टि की जा सकती है. कॉन्फ़िगर की गई हर जांच के लिए, दुनिया भर की अलग-अलग जगहों से नियमित तौर पर संपर्क किया जाता है. अपटाइम की जांचों का इस्तेमाल, सूचना देने की नीति की परिभाषाओं में शर्तों के तौर पर किया जा सकता है.

सबसे ऊपर मौजूद मेन्यू में, सूचनाएं > अपटाइम चेक को चुनकर, अपने चेक और उनकी स्थिति दिखाई जा सकती है. आपको Google Stackdriver डैशबोर्ड और खास संसाधनों के लिए बनाए गए पेजों पर, अपटाइम की जांच सेक्शन भी दिखेंगे. अगर अपटाइम की जांच में संसाधनों का कोई ग्रुप शामिल है, तो जांच को बड़ा करके ग्रुप के अलग-अलग सदस्यों का स्टेटस दिखाया जा सकता है.

अपटाइम की जांच करने की सुविधा सेट अप करें. Stackdriver की होमस्क्रीन में, अपटाइम चेक विजेट ढूंढें:

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

अलग-अलग विकल्पों को भरने के लिए, यहां दिए गए स्क्रीनशॉट का इस्तेमाल करें:

"जांच करें" बटन पर क्लिक करके पक्का करें कि आपके एंडपॉइंट तक पहुंचा जा सकता है. आपको तीन हरे रंग के सही के निशान दिखने चाहिए. इसके बाद, सेव करें पर क्लिक करें. ध्यान दें: अगर आपको 'ठीक है' का जवाब नहीं मिलता है, तो भी लैब को आगे बढ़ाया जा सकता है. ऐसा हो सकता है कि यह सिर्फ़ जांच के समय की समस्या हो.

इसके बाद, आपको "अपटाइम की जांच की गई" बॉक्स दिखेगा. साथ ही, आपसे पूछा जाएगा कि क्या आपको इस जांच के लिए सूचना देने वाली नीति बनानी है. हम अगले सेक्शन में ऐसा करेंगे. फ़िलहाल, किसी भी विकल्प पर क्लिक न करें.

सूचना पाने से जुड़ी नीतियां सेट अप की जा सकती हैं. इनसे ऐसी शर्तें तय की जा सकती हैं जिनसे यह तय होता है कि आपकी क्लाउड सेवाएं और प्लैटफ़ॉर्म सामान्य तरीके से काम कर रहे हैं या नहीं. Cloud Monitoring, कई तरह की मेट्रिक और हेल्थ चेक की सुविधा देता है. इनका इस्तेमाल नीतियों में किया जा सकता है.

जब सूचना देने वाली नीति की शर्तों का उल्लंघन होता है, तो एक इंसिडेंट बनाया जाता है. यह इंसिडेंट, Stackdriver कंसोल के इंसिडेंट सेक्शन में दिखता है. जवाब देने वाले लोग, सूचना मिलने की पुष्टि कर सकते हैं. साथ ही, समस्या हल होने पर घटना को बंद कर सकते हैं.

"सूचना पाने की नीति बनाएं" पर क्लिक करें. अब हम नीति को कॉन्फ़िगर करने के लिए आगे बढ़ते हैं.

अब आपको यह स्क्रीन दिखनी चाहिए:

नीति का नाम डालें: "nginx ग्रुप के लिए अपटाइम की जांच"

अब सूचना पाने के तरीके वाले सेक्शन में, "सूचना जोड़ें" पर क्लिक करें

अपने Google Cloud खाते से जुड़ा ईमेल पता डालें. स्क्रीन पर सबसे नीचे तक स्क्रोल करें और "नीति सेव करें" पर क्लिक करें.

Stackdriver के होम पेज पर वापस जाएं. इसके लिए, सबसे ऊपर बाएं कोने में मौजूद लोगो पर क्लिक करें.

अब आपको डैशबोर्ड के अपटाइम की जांच करने वाले सेक्शन में, अपटाइम की जांच करने की सुविधा दिखेगी. फ़िलहाल, स्टेटस हरा होना चाहिए.

नीचे की ओर स्क्रोल करके इवेंट लॉग पर जाएं. यहां आपको वह इवेंट दिखेगा जिसके लिए सूचना देने वाली नीति बनाई गई थी.

अब, कुछ समस्याएं पैदा करते हैं :)

आइए, देखते हैं कि Nginx सेवा को बंद करने पर क्या होता है.

Cloud Shell कमांड लाइन से इंस्टेंस में फिर से एसएसएच करें:

$ gcloud compute ssh nginx-plus-1

इसके बाद, यह टाइप करें:

yourusername@nginx-plus-1:~$ sudo service nginx stop

अब हमने जो अपटाइम जांच बनाई है वह काम नहीं करेगी. इसके बाद, एक इंसिडेंट बनाया जाएगा. साथ ही, आपको ऊपर दिए गए पते पर सूचना देने वाला ईमेल भेजा जाएगा. स्थिति का पता चलने में एक मिनट लगेगा. क्या आपको अपटाइम की जांच सेट करते समय एक मिनट की अवधि याद है? इसलिए, आइए nginx ग्रुप पेज पर जाएं और उसकी जांच करें.

किसी संसाधन ग्रुप के डैशबोर्ड पर जाने के कई तरीके हैं:

  1. होम पेज पर, ग्रुप के नाम पर क्लिक करें. इससे, ग्रुप के संसाधनों की निगरानी के लिए बनाए गए डैशबोर्ड पर स्विच किया जाता है. इस डैशबोर्ड को अपनी पसंद के मुताबिक भी बनाया जा सकता है.



  2. सबसे ऊपर मौजूद मेन्यू से, ग्रुप चुनें. इसके बाद, अपना ग्रुप ढूंढें.

अब, अपने-आप रीफ़्रेश होने की सुविधा वाले बटन पर क्लिक करें, ताकि यह पक्का किया जा सके कि डैशबोर्ड अपने-आप रीफ़्रेश हो रहे हैं. ऐसा करने पर, आइकॉन का रंग लाल हो जाएगा.

अब आपको एक ऐसा डैशबोर्ड दिख रहा है जो अपने-आप बनाए गए nginx ग्रुप के लिए है. दाईं ओर, ग्रुप से जुड़ी कई मुख्य मेट्रिक के ग्राफ़ दिए गए हैं. दूसरे शब्दों में, इन ग्राफ़ में ऐसी मेट्रिक दिखाई गई हैं जो nginx ग्रुप के सभी संसाधनों से जुड़ी हैं. जैसे, हमने पहले तीन nginx+ वीएम बनाए थे.

बाईं ओर, आपको ग्रुप से जुड़ी अलग-अलग जानकारी दिखेगी:

  • समस्या की स्थिति
  • अपटाइम चेक
  • इवेंट लॉग
  • संसाधनों की सूची (उदाहरण के लिए, इंस्टेंस, वॉल्यूम वगैरह)

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

अलग-अलग संसाधनों या उप-समूहों के खास डैशबोर्ड पर जाने के लिए, उन पर क्लिक करें. उदाहरण के लिए, nginx-plus-1 पर क्लिक करने से, आपको ऐसे डैशबोर्ड पर ले जाया जाएगा जिसमें सिर्फ़ उस इंस्टेंस से जुड़ी मेट्रिक और जांच शामिल होंगी. इसे अभी आज़माएं:

सूचना से जुड़ी शर्तों का कोई सेट, तय किए गए मानदंड को पूरा करता है, तो Stackdriver की घटनाएं खुल जाती हैं. इस उदाहरण में, हमने nginx के अपटाइम की जांच के लिए सूचना सेट की है. फ़िलहाल, nginx-plus-1 पर यह जांच पूरी नहीं हो रही है. इंसिडेंट की मदद से, मौजूदा स्थितियों को ट्रैक किया जा सकता है. साथ ही, समस्याओं पर काम करते समय टीम के अन्य सदस्यों के साथ मिलकर काम किया जा सकता है.

आइए, इस घटना के बारे में स्वीकार करें और टीम के अन्य सदस्यों को बताएं कि हम इसकी जांच कर रहे हैं:

ध्यान दें कि इससे घटना की स्थिति, 'खुली है' से बदलकर 'स्वीकार की गई' हो जाती है. उल्लंघन अब भी जारी है (नीति के उल्लंघन से जुड़ी सूचना देने की सुविधा की शर्तों का अब भी उल्लंघन हो रहा है). हालांकि, आपने टीम के सदस्यों को यह सूचना दी है कि आप इस समस्या पर काम कर रहे हैं. इसे इवेंट लॉग में भी रिकॉर्ड किया जाएगा.

समस्याओं को मैन्युअल तरीके से हल किया जा सकता है या वे अपने-आप हल हो सकती हैं. बाद वाला देखने के लिए, nginx-plus-1 में ssh करें और समस्या ठीक करें:

yourusername@nginx-plus-1:~$ sudo service nginx start

अब अपटाइम की जांच सामान्य होने पर, यह समस्या अपने-आप हल हो जाएगी. 'हल करें' मेन्यू आइटम को चुनकर, इस समस्या को खुद भी हल किया जा सकता है.

Cloud Logging, लॉगिंग-एज़-ए-सर्विस का समाधान है. यह एक ही जगह पर कई सोर्स से मिले लॉग देखने और उनसे जुड़े सवाल पूछने की सुविधा देता है. लॉग का इस्तेमाल, उन्हें अन्य डेस्टिनेशन (Google Cloud Storage, Google BigQuery या Google Cloud Pub/Sub) पर एक्सपोर्ट करने के लिए भी किया जा सकता है.

Cloud Logs Viewer को ऐक्सेस करने के लिए, Cloud Console के बाईं ओर मौजूद मेन्यू से इसे चुनें:

आपको लॉग व्यूअर पर ले जाया जाएगा. यहां पहले से तय की गई क्वेरी का इस्तेमाल किया जा सकता है. इसके अलावा, अपनी कस्टम क्वेरी बनाई और सेव की जा सकती हैं. साथ ही, क्लाउड डिप्लॉयमेंट में मौजूद कई संसाधनों से आने वाले लॉग की लाइव स्ट्रीम देखी जा सकती है. इसके अलावा, लॉग से मेट्रिक बनाई जा सकती हैं, उन्हें एक्सपोर्ट किया जा सकता है, और भी बहुत कुछ किया जा सकता है.

यहां कुछ काम के कंट्रोल दिए गए हैं, जिनकी मदद से काम की जानकारी को तुरंत फ़िल्टर किया जा सकता है:

  1. संसाधन के टाइप के हिसाब से फ़िल्टर करना
  2. चुने गए संसाधनों के खास तरह के लॉग फ़िल्टर करें
  3. लॉग लेवल के हिसाब से फ़िल्टर करना
  4. पिछली समस्याओं की जांच करने के लिए, किसी खास तारीख या तारीखों के हिसाब से फ़िल्टर करें
  5. लगातार स्ट्रीमिंग की सुविधा को टॉगल करें
  6. टेक्स्ट, लेबल या रेगुलर एक्सप्रेशन खोजने के लिए खोज बॉक्स

अब, किसी खास लॉग को ढूंढने की प्रैक्टिस करते हैं.

संसाधन टाइप चुनने वाले टूल (स्क्रीनशॉट में 1) से, Compute Engine -> सभी संसाधन टाइप चुनें

इसके बाद, लॉग-टाइप सिलेक्टर (स्क्रीनशॉट में 2) से nginx-access चुनें, ताकि सभी ऐक्सेस लॉग देखे जा सकें

अब, लगातार स्ट्रीमिंग की सुविधा (5) को टॉगल करके चालू करें, ताकि आपको लॉग दिखते रहें. अगर आपको कोई नया लॉग नहीं दिखता है, तो अपने ब्राउज़र में nginx-plus वीएम में से किसी एक का बाहरी आईपी पता डालें.

इस कोडलैब में लॉग पर ज़्यादा फ़ोकस नहीं किया गया है. हालांकि, लॉग को मिटाने से पहले, उन्हें एक्सप्लोर किया जा सकता है. दर्शक के तौर पर नेविगेट करने के बारे में ज़्यादा जानकारी यहां मिल सकती है. अगर आपको इस बारे में ज़्यादा जानकारी चाहिए कि Cloud Logging का इस्तेमाल किन कामों के लिए किया जा सकता है, तो यहां इससे जुड़े दस्तावेज़ों की टॉप-लेवल डायरेक्ट्री दी गई है.

आइए, कोड लैब के दौरान बनाए गए कंप्यूट संसाधनों को रिलीज़ करें. Cloud Shell में ये कमांड चलाएं:

$ for i in {1..3}; do \
gcloud -q --user-output-enabled=false compute instances delete nginx-plus-$i ; done

इसके बाद, Google Stackdriver Console पर जाएं. यह Cloud Console के बाएं पैनल में मौजूद मेन्यू में "Monitoring" के नाम से दिखता है. यहां जाकर, अपटाइम की जांच करने और सूचना पाने की उन नीतियों को हटाएं जिन्हें हमने बनाया है. इसके लिए, टॉप लेवल के मेन्यू आइटम सूचनाएं -> नीतियों की खास जानकारी और सूचनाएं -> अपटाइम चेक पर जाएं.

अब आपके पास, क्लाउड पर काम करने वाले ऐप्लिकेशन को मॉनिटर करने का विकल्प है.

हमने क्या-क्या बताया

  • Stackdriver के होम पेज के बारे में जानकारी.
  • डैशबोर्ड और चार्ट को समझना.
  • अपटाइम की जांच बनाई जा रही है.
  • सूचना पाने के लिए आसान नीति बनाना.
  • सूचना से जुड़े मामलों को मैनेज करना.
  • लॉग व्यूअर पर नेविगेट करना.

अगले चरण

  • कस्टम डैशबोर्ड बनाने की कोशिश करें.
  • सूचना पाने की नीति बनाते समय, अलग-अलग विकल्पों के बारे में जानें.
  • Cloud Logging का इस्तेमाल करते समय उपलब्ध अलग-अलग विकल्पों के बारे में जानें.

ज़्यादा जानें

हमें सुझाव/राय दें या शिकायत करें

  • कृपया थोड़ा समय निकालकर, हमारे छोटे से सर्वे में हिस्सा लें