16.08.17 - सार्वजनिक क्लाउड के रिलीज़ नोट के लिए Apigee Edge

यहां Apigee Edge के दस्तावेज़ देखे जा रहे हैं.
पर जाएं Apigee X दस्तावेज़.
info

हमने 30 अगस्त, 2016 को Apigee Edge का नया वर्शन, पब्लिक क्लाउड के लिए लॉन्च किया था.

नई सुविधाएं और अपडेट

इस रिलीज़ में शामिल नई सुविधाओं और अपडेट के बारे में यहां बताया गया है.

Assign Message और Raise Fault में JSON पेलोड

Assign Message या Raise Fault नीति का इस्तेमाल करके, JSON पेलोड सेट करते समय, उपयोगकर्ताओं को कभी-कभी ऐसे तरीके इस्तेमाल करने पड़ते थे जिनसे यह पक्का किया जा सके कि रनटाइम पर JSON मैसेज सही तरीके से फ़ॉर्मैट किया गया हो. जैसे, पेलोड की शुरुआत बैकस्लैश "\" से करना या Payload एलिमेंट पर variablePrefix और variableSuffix तय करना. ऐसा तब भी करना पड़ता था, जब मैसेज में कोई वैरिएबल इस्तेमाल न किया गया हो.

इस सुधार के बाद, JSON मैसेज को सही तरीके से फ़ॉर्मैट करने के लिए, किसी भी तरीके का इस्तेमाल करने की ज़रूरत नहीं है. साथ ही, अमान्य JSON बनाए बिना, कर्ली ब्रेसिज़ का इस्तेमाल करके वैरिएबल तय किए जा सकते हैं. उदाहरण के लिए, यहां दिए गए कोड से JSON मैसेज में message.content की वैल्यू डाली जाती है:

<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>

अगर आपने किसी तरीके का इस्तेमाल किया है, तो आपका कोड पहले की तरह काम करता रहेगा. वैरिएबल दिखाने के लिए, कर्ली ब्रेसिज़ के बजाय variablePrefix और variableSuffix का भी इस्तेमाल किया जा सकता है.

Assign Message नीति और Raise Fault नीति के रेफ़रंस वाले दस्तावेज़ों में, <Set><Payload> एलिमेंट देखें. (APIRT-1160)

XML to JSON नीति में सुधार

XML to JSON नीति में ये सुविधाएं जोड़ी गई हैं. नीति को इस तरह कॉन्फ़िगर किया जा सकता है:

  • कन्वर्ज़न के दौरान, कुछ एक्सएमएल एलिमेंट को कलेक्शन के तौर पर ट्रीट करना. इससे JSON दस्तावेज़ में वैल्यू, स्क्वेयर ब्रैकेट '[ ]' में दिखती हैं.
  • आखिरी JSON दस्तावेज़ में, एक्सएमएल दस्तावेज़ के क्रम में मौजूद लेवल को हटाना या खत्म करना.

ज़्यादा जानकारी के लिए, XML to JSON नीति देखें. (APIRT-1144)

एपीआई प्रॉडक्ट के संसाधन पाथ में एक से ज़्यादा वाइल्डकार्ड

एपीआई प्रॉडक्ट में संसाधन पाथ तय करते समय, किसी संसाधन पाथ में एक से ज़्यादा जगहों पर वाइल्डकार्ड शामिल किए जा सकते हैं. उदाहरण के लिए, /team/*/invoices/** से एपीआई कॉल की अनुमति मिलती है. इसमें /team के बाद कोई भी एक वैल्यू और invoices/ के बाद कोई भी संसाधन पाथ शामिल किया जा सकता है. एपीआई कॉल पर अनुमति वाला यूआरआई होगा proxyBasePath/team/finance/invoices/company/a.

अगर इस रिलीज़ के बाद, आपके मौजूदा एपीआई प्रॉडक्ट के संसाधन पाथ उम्मीद के मुताबिक काम नहीं करते हैं, तो पहले जैसा व्यवहार वापस लाने के लिए, अपने संगठन पर यह प्रॉपर्टी सेट करें: features.enableStandardWildCardMatchForAPIProductResources = true

(MGMT-3273)

JavaScript में क्रिप्टो फ़ंक्शन

ज़्यादा परफ़ॉर्मेंस वाले JavaScript crypto फ़ंक्शन का नया सेट उपलब्ध है . इसका इस्तेमाल, हैश ऑब्जेक्ट बनाने, पाने, और अपडेट करने के लिए किया जा सकता है. जैसे: MD5, SHA-1, SHA256, SHA512. क्रिप्टो ऑब्जेक्ट की मदद से, अलग-अलग फ़ॉर्मैट में तारीख भी पाई जा सकती है. ज़्यादा जानकारी के लिए, JavaScript ऑब्जेक्ट मॉडल देखें. (APIRT-2886)

Java Callout JAR वर्शन की जांच करना

किसी एपीआई प्रॉक्सी पर Java JAR संसाधन अपलोड करते समय, HTTP 400 स्टेटस कोड मिलता है . यह कोड, 500 के बजाय तब मिलता है, जब Java संसाधन का वर्शन, Edge के साथ काम करने वाले Java के वर्शन के साथ काम नहीं करता. काम करने वाले सॉफ़्टवेयर और उनके वर्शन में, इसकी जानकारी दी गई है. (MGMT-3420)

एपीआई प्रॉक्सी के संसाधनों की पुष्टि करना

जब आपके पास एनवायरमेंट या संगठन के स्कोप में सेव की गई एपीआई प्रॉक्सी की संसाधन फ़ाइलें (जैसे, JavaScript या Java JAR) होती हैं, तो पुष्टि करने वाले फ़्रेमवर्क के लिए, यह ज़रूरी नहीं है कि उन संसाधनों को एपीआई प्रॉक्सी लेवल पर भी शामिल किया जाए. ऐसा करने पर, इंपोर्ट के लिए प्रॉक्सी बंडल की पुष्टि हो जाती है. अब संसाधनों की पुष्टि, इंपोर्ट के समय नहीं, बल्कि डिप्लॉयमेंट के समय होती है. (MGMT-1430)

एपीआई प्रॉक्सी के लिए टाइम आउट कॉन्फ़िगर करना

एपीआई प्रॉक्सी को तय समय के बाद टाइम आउट होने के लिए कॉन्फ़िगर किया जा सकता है. ऐसा करने पर, 504 गेटवे टाइम आउट स्टेटस मिलता है. इसका मुख्य इस्तेमाल, प्राइवेट क्लाउड के उन ग्राहकों के लिए है जिनकी एपीआई प्रॉक्सी को एक्ज़ीक्यूट होने में ज़्यादा समय लगता है. उदाहरण के लिए, मान लें कि आपको कुछ प्रॉक्सी को तीन मिनट में टाइम आउट करना है. इसके लिए, एपीआई प्रॉक्सी के कॉन्फ़िगरेशन में, api.timeout नाम की नई प्रॉपर्टी का इस्तेमाल किया जा सकता है. तीन मिनट वाले उदाहरण के लिए, इसे इस तरह कॉन्फ़िगर करें:

  1. सबसे पहले, लोड बैलेंसर, राउटर, और मैसेज प्रोसेसर को तीन मिनट में टाइम आउट होने के लिए कॉन्फ़िगर करें.
  2. इसके बाद, काम की प्रॉक्सी को तीन मिनट में टाइम आउट होने के लिए कॉन्फ़िगर करें. वैल्यू को मिलीसेकंड में तय करें. उदाहरण के लिए:
    <ProxyEndpoint name="default">
      <HTTPProxyConnection>
        <BasePath>/v1/weather</BasePath>
        <Properties>
          <!-- api.timeout is in milliseconeds -->
          <Property name="api.timeout">180000</Property>
        </Properties>
        ...
  3. हालांकि, ध्यान दें कि सिस्टम के टाइम आउट बढ़ाने से परफ़ॉर्मेंस से जुड़ी समस्याएं हो सकती हैं. ऐसा इसलिए, क्योंकि api.timeout सेटिंग के बिना सभी प्रॉक्सी, लोड बैलेंसर, राउटर, और मैसेज प्रोसेसर के नए और ज़्यादा टाइम आउट का इस्तेमाल करती हैं. इसलिए, उन अन्य एपीआई प्रॉक्सी को कम टाइम आउट का इस्तेमाल करने के लिए कॉन्फ़िगर करें जिन्हें ज़्यादा टाइम आउट की ज़रूरत नहीं है. उदाहरण के लिए, यहां दिए गए कोड से, एपीआई प्रॉक्सी को एक मिनट में टाइम आउट होने के लिए सेट किया जाता है:
    <Property name="api.timeout">60000</Property>

क्लाउड के ग्राहक, Edge के टाइम आउट में बदलाव नहीं कर सकते. हालांकि, वे एपीआई प्रॉक्सी के टाइम आउट को कॉन्फ़िगर कर सकते हैं, इसके लिए, यह ज़रूरी है कि टाइम आउट, Edge के मैसेज प्रोसेसर के स्टैंडर्ड टाइम आउट (57 सेकंड) से कम हो.

वैल्यू में वैरिएबल नहीं डाला जा सकता. इस प्रॉपर्टी के बारे में, एंडपॉइंट की प्रॉपर्टी के रेफ़रंस में बताया गया है. (APIRT-1778)

मैसेज लॉगिंग नीति के लिए TLS/SSL

<KeyStore> और <TrustStore> को SSLInfo कॉन्फ़िगरेशन में मैसेज लॉगिंग नीति पर सेट किया जा सकता है, जिससे लॉगिंग सेवा के साथ एक और दो-तरफ़ा TLS/SSL की अनुमति मिलती है. मैसेज लॉगिंग नीति पर SSLInfo को उसी तरह कॉन्फ़िगर किया जाता है जिस तरह प्रॉक्सी TargetEndpoint पर किया जाता है. हालांकि, मैसेज लॉगिंग TLS/SSL सिर्फ़ टीसीपी प्रोटोकॉल के साथ काम करता है. (APIRT-1858)

ठीक की गई गड़बड़ियां

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

समस्या आईडी ब्यौरा
SECENG-609 एसोसिएट किए गए ट्रस्टस्टोर को मिटाने के दौरान या ट्रस्टस्टोर में मौजूद मान्य सर्टिफ़िकेट को मिटाने पर, रनटाइम कॉल में गड़बड़ी नहीं होती
MGMT-3404 Node.js के लॉग देखना/पाना और प्रॉक्सी डिप्लॉय करना बहुत धीमा है
MGMT-3400 अगर कॉल करने वाले उपयोगकर्ता के नाम में "+" का निशान है, तो /userroles मैनेजमेंट एपीआई को कॉल नहीं किया जा सकता
MGMT-3368 resources/node/resources डायरेक्ट्री वाले एपीआई प्रॉक्सी बंडल को इंपोर्ट करते समय, java.lang.ArrayIndexOutOfBoundsException: 1 गड़बड़ी होती है
MGMT-3364 OAuthV2: redirect_uri की जांच
MGMT-3319 वॉल्ट में मौजूद एंट्री की सूची, उन संगठनों (सीपीएस और नॉन-सीपीएस) के लिए काम नहीं करती जिनकी किसी एक एंट्री में शून्य वैल्यू होती है
MGMT-3226 संगठन/एनवायरमेंट लेवल पर क्वेरी करने से, सारा डेटा नहीं दिखना चाहिए. ऐसा होने पर, एपीआई में गड़बड़ी होती है
Release_160302 में एक गड़बड़ी थी. इसमें संगठन-लेवल/एनवायरमेंट लेवल पर संसाधनों की सूची नहीं दिखती थी. ऐसा तब होता था, जब संसाधनों का कुल साइज़ 16 एमबी से ज़्यादा होता था. इस गड़बड़ी को ठीक कर दिया गया है.
AXAPP-2429 response_status_code का इस्तेमाल करने वाले Analytics API में, डेटा ऐक्सेस से जुड़ी गड़बड़ी होती है
AXAPP-2386 Analytics की रोज़ाना की ईमेल रिपोर्ट में, खाली रिपोर्ट के कॉन्टेंट की गड़बड़ी ठीक की गई
AXAPP-2347 Analytics की रोज़ाना की खास जानकारी वाले ईमेल नहीं मिल रहे हैं
APIRT-3141 Java Callouts, new ExecutionResult() को कॉल करने पर काम नहीं करते. ऐसा इसलिए, क्योंकि कंस्ट्रक्टर को प्राइवेट बना दिया गया है
APIRT-3140 HEAD एपीआई कॉल में, ServiceCallout नीति काम नहीं कर रही है
APIRT-3131 **एपीआई प्रॉक्सी के लिए, createdBy की गलत जानकारी दिखती है. ऐसा तब होता है, जब बाहरी पुष्टि करने वाली सेवा के साथ, कमाई करने की सुविधा का इस्तेमाल किया जाता है**
APIRT-3121 संगठन की संसाधन फ़ाइल में किया गया बदलाव, पूरी तरह से लागू नहीं होता
APIRT-3117 एमपी ने 100% सीपीयू का इस्तेमाल किया और ट्रैफ़िक को प्रोसेस करना बंद कर दिया
APIRT-3016 डिप्लॉयमेंट के दौरान, राउटर में "कॉल टाइम आउट हो गया" गड़बड़ियां होती हैं
APIRT-2975 सर्ट बंडल अपलोड नहीं हो सका
APIRT-2955 FHIR के मुताबिक, JSON रिस्पॉन्स डेटा के कुछ एट्रिब्यूट को मास्क नहीं किया जा सकता Content-Type हेडर 'application/json+fhir'
APIRT-2946 OAuthV2-RefreshToken नीति, एट्रिब्यूट को नहीं छिपाती. ऐसा तब होता है, जब डिसप्ले को 'गलत है' पर सेट किया जाता है
APIRT-2908 वर्चुअल होस्ट पर TLS1.2 अपडेट के बाद, इंटरनल एपीआई कॉल के लिए TLS1.2 लागू करना ज़रूरी है
APIRT-2901 कैश मेमोरी से मिले Gzipped रिस्पॉन्स, दो बार कंप्रेस किए जाते हैं
APIRT-2873 प्रॉडक्ट/डेवलपर/प्रॉक्सी मिटाने के बाद, एमपी में VerifyAPIKey से जुड़ी NullPointerException गड़बड़ी होती है
APIRT-2871 Trace में, IOIntensive नीतियां दो बार दिखती हैं
APIRT-2825 accesstoken की गड़बड़ी वाले रिस्पॉन्स में, व्याकरण से जुड़ी गड़बड़ी है
APIRT-2750 किसी खास संगठन में, ट्रैफ़िक से जुड़ी गड़बड़ियां ज़्यादा होती हैं
APIRT-2685 अनजान गड़बड़ी की वजह से, ट्रैफ़िक फ़्लो नहीं हो सकता
APIRT-2647 नॉन-प्रोड/डेवलपमेंट के साथ, "Underlying input stream returned zero bytes" गड़बड़ी होती है
APIRT-2630 कैश मेमोरी से वैल्यू पढ़ने की कोशिश करते समय, रुक-रुक कर समस्याएं होती हैं
APIRT-2620 कुछ ब्लॉक करने वाले चरणों के लिए, अलग थ्रेड पूल
APIRT-2610 Response Cache नीति के साथ, java.lang.ClassCastException गड़बड़ी होती है
APIRT-2608 Response Cache नीतियों में, Last-Modified हेडर को पार्स करने में गड़बड़ी होती है
APIRT-2605 "organization" और "environment" वैरिएबल को नीतियों के ज़रिए ओवरराइट करने की अनुमति नहीं होनी चाहिए
APIRT-2566 OAuthV2 नीति, गलत तरीके से फ़ॉर्मैट किया गया WWW-Authenticate हेडर दिखाती है
APIRT-2491 मैनेजमेंट और एमपी के बीच आरपीसी टाइम आउट की वजह से, TargetServer अपडेट नहीं हो सका
APIRT-2386 एपीआई प्रॉडक्ट में, खाली स्ट्रिंग स्कोप बनता है. ऐसा तब होता है, जब Allowed OAuth स्कोप खाली होते हैं
APIRT-2383 XSL Transformation नीतियां, गड़बड़ी होने पर कोई डेटा लॉग नहीं करती हैं
APIRT-2364 गड़बड़ी होने पर, OAuth फ़ॉल्ट फ़्लो वैरिएबल अपडेट नहीं होते
APIRT-2216 सर्वर से भेजे गए इवेंट - प्रॉडक्ट में, इवेंट स्ट्रीम में समस्याएं आ रही हैं
APIRT-2079 बनाए गए सेशन के लिए टाइम आउट खत्म होने के बाद भी, डीबग cURL कॉल बंद नहीं होता
APIRT-1495 XML Threat Protection, fhir Content-Type को नहीं पकड़ता
APIRT-347 इंपोर्ट करने पर, XSL नीति की पुष्टि सही तरीके से नहीं होती. साथ ही, दस्तावेज़ में बताए गए तरीके से, आउटपुट वैरिएबल को नतीजे असाइन नहीं किए जाते