राऊटर पर NGINX डीबग लॉग चालू करना

आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं.
जानकारी

Apigee पर, राउटर डिफ़ॉल्ट रूप से सिर्फ़ गड़बड़ी के मैसेज को गड़बड़ी के लॉग फ़ाइलों में लॉग करने के लिए कॉन्फ़िगर किए जाते हैं. हालांकि, ऐसी कई स्थितियां हो सकती हैं जिनमें आपको यह पता लगाने के लिए ज़्यादा जानकारी इकट्ठा करनी पड़े कि कोई गड़बड़ी क्यों हुई. इसके लिए, Router को डीबग मोड में कॉन्फ़िगर किया जा सकता है. इससे आपको डीबग लॉग मिल सकते हैं. इनकी मदद से, गड़बड़ी के बारे में ज़्यादा जानकारी मिल सकती है और इसे जल्दी ठीक किया जा सकता है.

इस दस्तावेज़ में, Apigee Edge के राउटर पर डीबग लॉग चालू करने का तरीका बताया गया है. ऐसा किसी खास वर्चुअल होस्ट पर किए गए अनुरोधों के लिए किया जाता है. डीबग लॉगिंग को चालू किया जा सकता है, ताकि किसी भी समस्या के बारे में ज़्यादा जानकारी इकट्ठा की जा सके. जैसे, गलत फ़ॉर्मैट में किया गया अनुरोध, 400 गलत अनुरोध - एसएसएल सर्टिफ़िकेट से जुड़ी गड़बड़ी. यह समस्या Northbound (क्लाइंट ऐप्लिकेशन और राउटर के बीच) पर होती है.

शुरू करने से पहले

  • अगर आपको NGINX के गड़बड़ी लॉग और लॉगिंग के लेवल के बारे में जानकारी नहीं है, तो कृपया NGINX के गड़बड़ी लॉग से जुड़े दस्तावेज़ पढ़ें.
  • उन एपीआई अनुरोधों के संगठन, एनवायरमेंट, और वर्चुअल होस्ट के नाम इकट्ठा करें जिनके लिए आपको डीबग करने से जुड़ी जानकारी इकट्ठा करनी है.

राउटर पर NGINX डीबग लॉग जनरेट करने की सुविधा चालू करना

इस सेक्शन में, Edge Router पर डीबग लॉग चालू करने का तरीका बताया गया है.

काम की वर्चुअल होस्ट कॉन्फ़िगरेशन फ़ाइल की पहचान करना

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

  1. अगर आपको उस एपीआई अनुरोध के लिए संगठन का नाम, एनवायरमेंट का नाम, और वर्चुअल होस्ट पता है जिसे डीबग करना है, तो वर्चुअल होस्ट कॉन्फ़िगरेशन फ़ाइल का पता लगाएं. इसके लिए, यह तरीका अपनाएं:
    1. /opt/nginx/conf.d/ डायरेक्ट्री पर जाएं.
    2. नीचे दी गई कमांड का इस्तेमाल करके, conf.d डायरेक्ट्री में ORG_NAME_ENV_NAME_VIRTUALHOST.conf फ़ाइल खोजें:
      ls -ltrh | grep "ORG_NAME_ENV_NAME_VIRTUALHOST_NAME"
  2. अगर आपको संगठन का नाम नहीं पता है, तो एपीआई अनुरोध में इस्तेमाल किए गए होस्ट के दूसरे नाम का इस्तेमाल करके, वर्चुअल होस्ट कॉन्फ़िगरेशन फ़ाइल की पहचान की जा सकती है. इसके लिए, यह तरीका अपनाएं:

    /opt/nginx/conf.d/ डायरेक्ट्री पर जाएं और इस कमांड का इस्तेमाल करके, उस hostalias को खोजें जिससे अनुरोध किया गया था:

    ls -ltrh | grep -r 'HOST_ALIAS_NAME'

    आउटपुट का उदाहरण:

    मान लें कि होस्ट का उपनाम opdk.cert-test.com है. ls -ltrh कमांड चलाने पर, आपको नीचे दिखाया गया आउटपुट दिखेगा:

राउटर पर किसी वर्चुअल होस्ट के लिए, गड़बड़ी की जानकारी वाला लॉग इकट्ठा करने की सुविधा चालू करना

यहां दिए गए चरणों में, किसी वर्चुअल होस्ट के लिए Apigee राऊटर पर डीबग लॉग चालू करने का तरीका बताया गया है.

  1. राउटर मशीन पर, एडिटर में यह फ़ाइल खोलें: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf. उदाहरण के लिए:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
  2. नीचे दी गई लाइन में बदलाव करें:
    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;

    से

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
  3. बदलावों को सेव करें.
  4. NGINX को फिर से लोड करने का निर्देश चलाएं. उदाहरण के लिए:
    sudo /opt/nginx/scripts/apigee-nginx reload
  5. अब यह फ़ाइल डीबग लॉग कैप्चर करेगी:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  6. अगर आपको एक से ज़्यादा राऊटर पर डीबग लॉग कैप्चर करने हैं, तो हर राऊटर पर यह तरीका दोहराएं.

NGINX की गड़बड़ी वाली लॉग फ़ाइल में, डीबग करने से जुड़ी जानकारी की पुष्टि की जा रही है

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

    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log

  2. पुष्टि करें कि आपको एपीआई अनुरोधों के लिए डीबग करने से जुड़ी जानकारी दिख रही है. जैसे, इस उदाहरण में दिखाया गया है:

    डीबग करने से जुड़ी जानकारी का उदाहरण:

    2021/01/27 02:48:40 [warn] 27624#27624: *3777 a client request body is buffered to a temporary file /opt/apigee/var/log/edge-router/nginx/client_temp/0000000001, client: XX.XX.XX.XX, server: XX.XX.XX.XX, request: "POST /post-no-target HTTP/1.1", host: "XX.XX.XX.XX:443"

    क्लाइंट के बड़े पेलोड के साथ POST अनुरोध भेजने पर, ऊपर दी गई जानकारी कैप्चर की जाएगी. यह लॉग सिर्फ़ तब दिखेगा, जब डीबग लॉगिंग चालू होगी.

  3. अगर आपको डीबग करने से जुड़ी ज़्यादा जानकारी नहीं दिखती है, तो पुष्टि करें कि आपने राउटर पर किसी वर्चुअल होस्ट के लिए डीबग लॉगिंग चालू करना में बताए गए सभी चरणों का सही तरीके से पालन किया हो. अगर आपने कोई चरण छोड़ दिया है, तो सभी चरणों को फिर से सही तरीके से दोहराएं.
  4. अगर आपको अब भी डीबग करने से जुड़ी जानकारी नहीं मिल रही है, तो कृपया Apigee Edge की सहायता टीम से संपर्क करें.

राउटर पर किसी वर्चुअल होस्ट के लिए डीबग लॉग बंद करना

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

  1. राउटर मशीन पर, एडिटर में यह फ़ाइल खोलें: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf उदाहरण के लिए:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
  2. नीचे दी गई लाइन में बदलाव करें:

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;

    से

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
  3. बदलावों को सेव करें.
  4. NGINX को फिर से लोड करने का निर्देश चलाएं. उदाहरण के लिए:
    /opt/nginx/scripts/apigee-nginx reload
  5. अब इस फ़ाइल में सिर्फ़ गड़बड़ी के लॉग कैप्चर किए जाएंगे:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  6. अगर आपको एक से ज़्यादा राऊटर पर डीबग लॉग बंद करने हैं, तो हर राऊटर पर यह तरीका दोहराएं.

सिर्फ़ गड़बड़ी की जानकारी की पुष्टि की जाती है और इसे NGINX की गड़बड़ी वाली लॉग फ़ाइल में लॉग किया जाता है

  1. होस्ट एलियास और पोर्ट पर कुछ एपीआई अनुरोध करें, जो किसी वर्चुअल होस्ट कॉन्फ़िगरेशन से जुड़ा हो. इसके अलावा, क्लाइंट के अनुरोध करने का इंतज़ार करें.
  2. इस फ़ाइल की जांच करें: /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  3. पुष्टि करें कि आपको सिर्फ़ गड़बड़ी की जानकारी दिख रही हो और अनुरोधों के लिए डीबग करने से जुड़ी जानकारी अब लॉग न की जा रही हो.
  4. अगर आपको अब भी लगता है कि डीबग करने से जुड़ी अतिरिक्त जानकारी लॉग की जा रही है, तो पुष्टि करें कि आपने राउटर पर किसी वर्चुअल होस्ट के लिए डीबग लॉग बंद करना में बताए गए सभी चरणों का सही तरीके से पालन किया हो. अगर आपने कोई चरण छोड़ दिया है, तो सभी चरणों को फिर से सही तरीके से दोहराएं.
  5. अगर आपको अब भी डीबग करने से जुड़ी जानकारी नहीं मिल रही है, तो कृपया Apigee Edge की सहायता टीम से संपर्क करें.