गड़बड़ी की पहचान करने वाले एपीआई का इस्तेमाल करना

फ़िलहाल, Apigee Edge का दस्तावेज़ देखा जा रहा है.
Go to the Apigee X documentation.
info

अनियमितता के अलर्ट बनाने और मैनेज करने के लिए इस्तेमाल किए जाने वाले ज़्यादातर एपीआई, तय किए गए अलर्ट के लिए इस्तेमाल किए जाने वाले एपीआई की तरह ही होते हैं. साथ ही, अनियमितता के मेट्रिक इकट्ठा करने के लिए भी इन्हीं एपीआई का इस्तेमाल किया जाता है. तय किए गए अलर्ट और अनियमितता के अलर्ट, दोनों के लिए ये अलर्ट एपीआई एक ही तरीके से काम करते हैं:

हालांकि, कुछ एपीआई में अतिरिक्त प्रॉपर्टी होती हैं. इनका इस्तेमाल अनियमितता के अलर्ट के लिए किया जाता है. इनमें ये शामिल हैं:

  • अलर्ट पाना - तय किए गए अलर्ट और अनियमितता के अलर्ट के साथ-साथ सभी अलर्ट की सूची पाना.
  • अलर्ट बनाना - तय किया गया अलर्ट या अनियमितता का अलर्ट बनाना.
  • अलर्ट अपडेट करना - तय किए गए अलर्ट या अनियमितता के अलर्ट की परिभाषा अपडेट करना.

$ACCESS_TOKEN सेट करना

यहां दिखाए गए सभी एपीआई कॉल, $ACCESS_TOKEN नाम के एनवायरमेंट वैरिएबल में आपकी क्रेडेंशियल पास करते हैं. OAuth 2.0 का ऐक्सेस टोकन पाने के तरीके में बताए गए तरीके के मुताबिक, $ACCESS_TOKEN को अपने OAuth 2.0 ऐक्सेस टोकन पर सेट करें. इन उदाहरणों में इस्तेमाल किए गए cURL विकल्पों के बारे में जानने के लिए, cURL का इस्तेमाल करना लेख पढ़ें.

अलर्ट पाना

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

  • enabled - अगर true है, तो सिर्फ़ चालू अलर्ट दिखाए जाते हैं. डिफ़ॉल्ट वैल्यू false होती है.
  • alertType - यह तय करता है कि किस तरह का अलर्ट दिखाना है. इसके लिए, runtime, डिफ़ॉल्ट, cert वैल्यू का इस्तेमाल किया जा सकता है.
  • alertSubType - यह तय करता है कि किस तरह का अलर्ट सबटाइप दिखाना है. डिफ़ॉल्ट वैल्यू सेट नहीं होती, इसका मतलब है कि सभी तरह के अलर्ट सबटाइप दिखाए जाते हैं. अनियमितता के अलर्ट दिखाने के लिए, anomaly तय करें.

उदाहरण के लिए, myorg नाम के संगठन के लिए सिर्फ़ चालू अलर्ट दिखाने के लिए, यह एपीआई कॉल इस्तेमाल करें:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'

इस कॉल से, अनियमितता के सिर्फ़ वे अलर्ट दिखते हैं जो चालू और बंद, दोनों तरह के हैं:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=anomaly'

अनियमितता का अलर्ट बनाना या अपडेट करना

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

  • आपको यह तय करने के लिए, ये नई प्रॉपर्टी जोड़नी होंगी कि अलर्ट, अनियमितता का अलर्ट है:

    "alertType": "runtime"
    "alertSubType": "anomaly"

    इन प्रॉपर्टी की डिफ़ॉल्ट वैल्यू ये हैं:

    "alertType": "runtime"
    "alertSubType": "fixed"
  • conditions कलेक्शन में:

    • metrics प्रॉपर्टी में सिर्फ़ ये वैल्यू इस्तेमाल की जा सकती हैं:

      • count - एचटीटीपी गड़बड़ी की संख्या पर अलर्ट जनरेट करना.
      • totalLatency - इंतज़ार के समय के लिए अलर्ट जनरेट करना.
    • threshold प्रॉपर्टी में, संख्या के बजाय स्ट्रिंग का इस्तेमाल किया जाता है. इसके लिए, slight, moderate, और severe वैल्यू का इस्तेमाल किया जा सकता है.
    • durationSeconds और comparator प्रॉपर्टी काम नहीं करती हैं.
  • conditions कलेक्शन के dimensions एलिमेंट में:

    • आपको proxy प्रॉपर्टी की वैल्यू ALL पर सेट करनी होगी.
    • statusCode प्रॉपर्टी में सिर्फ़ 4xx, 503, 504, and 5xx वैल्यू का इस्तेमाल किया जा सकता है.
    • developerApp, collection, faultCodeCategory, faultCodeSubCategory, faultCodeName प्रॉपर्टी काम नहीं करती हैं.
  • अनियमितता के अलर्ट के लिए, reportEnabled प्रॉपर्टी काम नहीं करती है.

यहां दिए गए एपीआई कॉल के उदाहरण से, अनियमितता का एक अलर्ट बनता है. यह अलर्ट तब ट्रिगर होता है, जब किसी भी इलाके के prod एनवायरमेंट में मौजूद सभी एपीआई प्रॉक्सी के लिए, 5xx स्टेटस कोड सामान्य दर से जनरेट होते हैं. अलर्ट ट्रिगर होने पर, तय किए गए ईमेल पते पर एक सूचना भेजी जाती है:

curl 'https://apimonitoring.enterprise.apigee.com/alerts' \
 -X POST \
 -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \
 -H "Authorization: Bearer $ACCESS_TOKEN" \
 -d '{
     "organization":"myorg",
     "name":"5xx Anomaly Alert",
     "description":"My 5xx alert",
     "environment":"prod",
     "enabled":true,
     "alertType": "runtime",
     "alertSubType": "anomaly",
     "conditions":[
     {
        "description":"",
        "dimensions":{
            "org":"myorg",
            "env":"prod",
            "proxy":"ALL",
            "region":"ANY",
            "statusCode":"5xx"
        },
        "metric":"count",
        "threshold": "moderate"
     }
     ],
     "notifications":[{
         "channel":"email",
         "destination":"ops@acme.com"
     }],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600
    }'

अनियमितताओं के साथ इवेंट एपीआई का इस्तेमाल करना

किसी तय समयावधि के लिए, किसी संगठन में होने वाले सभी इवेंट की जानकारी पाने के लिए, /metrics/events एपीआई का इस्तेमाल करें. इवेंट की सूची में, Edge से पता लगाई गई अनियमितताएं और ट्रिगर हुए सभी अलर्ट शामिल होते हैं. अलर्ट में, तय किए गए अलर्ट और अनियमितता के अलर्ट, दोनों शामिल हो सकते हैं.

डिफ़ॉल्ट रूप से, एपीआई पिछले एक घंटे के सभी इवेंट की जानकारी दिखाता है. कोई दूसरी समयावधि तय करने के लिए, from और to क्वेरी पैरामीटर का इस्तेमाल करें. कोई दूसरी समयावधि तय करने के लिए, from और to क्वेरी पैरामीटर की वैल्यू.

उदाहरण के लिए, यहां दिया गया एपीआई कॉल, संगठन myorg में पिछले 12 घंटों में हुए सभी इवेंट की जानकारी दिखाता है:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&from=-12h&to=now"

OAuth 2.0 का ऐक्सेस टोकन पाने के तरीके में बताए गए तरीके के मुताबिक, $ACCESS_TOKEN को अपने OAuth 2.0 ऐक्सेस टोकन पर सेट करें. इस उदाहरण में इस्तेमाल किए गए cURL विकल्पों के बारे में जानने के लिए, cURL का इस्तेमाल करना लेख पढ़ें.

अगला कॉल, पिछले 24 घंटों में सामान्य थ्रेशोल्ड वाले अनियमितता के सभी इवेंट की जानकारी दिखाता है:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://apimonitoring.enterprise.apigee.com/metrics/events?org=myorg&type=anomaly&threshold=moderate&from=-24h&to=now"

इस एपीआई के लिए, सिर्फ़ org क्वेरी पैरामीटर ज़रूरी है. /metrics/events पर मौजूद एपीआई के दस्तावेज़ में बताए गए क्वेरी पैरामीटर के साथ-साथ, यह एपीआई अनियमितता का पता लगाने के लिए, इन विकल्पों के साथ काम करता है:

नाम ब्यौरा डिफ़ॉल्ट
threshold

तय किए गए थ्रेशोल्ड के हिसाब से इवेंट फ़िल्टर करें: slight, moderate या severe.

इसकी अनुमति सिर्फ़ तब होती है, जब आपने type=anomaly सेट किया हो.

सभी प्लैटफ़ॉर्म पर होने वाले क्रैश इवेंट की जानकारी
type तय किए गए टाइप के हिसाब से इवेंट फ़िल्टर करें: alert या anomaly. कॉमा लगाकर अलग की गई लिस्ट के तौर पर, एक से ज़्यादा वैल्यू तय करें. सभी प्रकार