লুকআপ ক্যাশে নীতি স্থাপনার ত্রুটি সমস্যা সমাধান

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান
তথ্য

অবৈধ টাইমআউট

ত্রুটি বার্তা

এজ ইউআই বা এজ ম্যানেজমেন্ট এপিআই এর মাধ্যমে এপিআই প্রক্সির স্থাপনা এই ত্রুটি বার্তার সাথে ব্যর্থ হয়:

Error Saving Revision revision_number
CacheLookupTimeoutInSeconds value value should be greater than zero.

উদাহরণ ত্রুটি বার্তা

Error Saving Revision 2
CacheLookupTimeoutInSeconds -1 value should be greater than zero.

উদাহরণ ত্রুটি স্ক্রিনশট

কারণ

যদি একটি LookupCache নীতির <CacheLookupTimeoutInSeconds> উপাদানটি একটি নেতিবাচক সংখ্যায় সেট করা থাকে, তাহলে API প্রক্সির স্থাপনা ব্যর্থ হয়।

উদাহরণস্বরূপ, যদি <CacheLookupTimeoutInSeconds> উপাদানটি -1 হয়, তাহলে API প্রক্সির স্থাপনা ব্যর্থ হয়।

রোগ নির্ণয়

  1. LookupCache নীতিতে <CacheLookupTimeoutInSeconds> উপাদানটির জন্য নির্দিষ্ট করা অবৈধ মান সনাক্ত করুন। আপনি ত্রুটি বার্তা এই তথ্য খুঁজে পেতে পারেন. উদাহরণস্বরূপ, নিম্নলিখিত ত্রুটিতে, <CacheLookupTimeoutInSeconds> উপাদানের জন্য ব্যবহৃত অবৈধ মান হল -1 :

    CacheLookupTimeoutInSeconds -1 value should be greater than zero.
    
  2. নির্দিষ্ট API প্রক্সিতে যেখানে ব্যর্থতা ঘটেছে সেখানে সমস্ত LookupCache নীতিগুলি পরীক্ষা করুন৷ এক বা একাধিক LookupCache নীতি থাকতে পারে যেখানে <CacheLookupTimeoutInSeconds> উপাদানটি নির্দিষ্ট করা আছে। LookUpCache নীতি শনাক্ত করুন যেখানে <CacheLookupTimeoutInSeconds> উপাদানের জন্য অবৈধ মান (উপরে #1 ধাপে চিহ্নিত) উল্লেখ করা হয়েছে।

    উদাহরণস্বরূপ, নিম্নলিখিত নীতি কনফিগারেশন -1 এর <CacheLookupTimeoutInSeconds> এর মান নির্দিষ্ট করে, যা ত্রুটি বার্তার সাথে মেলে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <LookupCache async="false" continueOnError="false" enabled="true" name="LookupCache-Token">
        <DisplayName>LookupCache-Token</DisplayName>
        <Properties/>
        <CacheKey>
            <Prefix/>
            <KeyFragment ref="request.queryparam.client_id"/>
        </CacheKey>
        <CacheLookupTimeoutInSeconds>-1</CacheLookupTimeoutInSeconds>
        <Scope>Exclusive</Scope>
        <ExpirySettings>
            <TimeoutInSec>3600</TimeoutInSec>
        </ExpirySettings>
        <AssignTo>usertoken</AssignTo>
    </LookupCache>
    
  3. যদি <CacheLookupTimeoutInSeconds> একটি ঋণাত্মক পূর্ণসংখ্যা হিসাবে নির্দিষ্ট করা হয়, তাহলে এটি ত্রুটির কারণ।

রেজোলিউশন

LookupCache নীতির <CacheLookupTimeoutInSeconds> উপাদানের মান সর্বদা একটি অ-নেতিবাচক পূর্ণসংখ্যা হিসাবে নির্দিষ্ট করা আছে তা নিশ্চিত করুন।

উপরে দেখানো উদাহরণ লুকআপক্যাচে নীতি সংশোধন করতে, আপনি <CacheLookupTimeoutInSeconds> উপাদানটিকে 30 এ পরিবর্তন করতে পারেন।

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<LookupCache async="false" continueOnError="false" enabled="true" name="LookupCache-Token">
    <DisplayName>LookupCache-Token</DisplayName>
    <Properties/>
    <CacheKey>
        <Prefix/>
        <KeyFragment ref="request.queryparam.client_id"/>
    </CacheKey>
    <CacheResource>tokencache</CacheResource>
    <CacheLookupTimeoutInSeconds>30</CacheLookupTimeoutInSeconds>
    <Scope>Exclusive</Scope>
    <ExpirySettings>
        <TimeoutInSec>3600</TimeoutInSec>
    </ExpirySettings>
    <AssignTo>usertoken</AssignTo>
</LookupCache>

অবৈধ ক্যাচে রিসোর্স রেফারেন্স

ত্রুটি বার্তা

এজ ইউআই বা এজ ম্যানেজমেন্ট এপিআই এর মাধ্যমে এপিআই প্রক্সির স্থাপনা এই ত্রুটি বার্তার সাথে ব্যর্থ হয়:

Error Deploying Revision revision_number to environment
Invalid cache resource reference [cache_resource] in Step definition [populate_cache_policy_name]. Context Revision:[revision_number];APIProxy:ResponseCache;Organization:[organization];Environment:[environment]

উদাহরণ ত্রুটি বার্তা

Error Deploying Revision 2 to test
Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test

উদাহরণ ত্রুটি স্ক্রিনশট

কারণ

এই ত্রুটিটি ঘটে যদি <CacheResource> উপাদানটি এমন একটি নামে সেট করা হয় যা API প্রক্সি স্থাপন করা হয় এমন পরিবেশে বিদ্যমান নেই।

রোগ নির্ণয়

  1. LookupCache নীতির <CacheResource> এলিমেন্টে ব্যবহৃত অবৈধ ক্যাশে এবং যে পরিবেশে ত্রুটি ঘটেছে তা শনাক্ত করুন। আপনি ত্রুটি বার্তা এই আইটেম দুটি খুঁজে পেতে পারেন. উদাহরণস্বরূপ, নিম্নলিখিত ত্রুটিতে, অবৈধ ক্যাশের নাম tokencache এবং পরিবেশের নাম test

    Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
    
  2. নির্দিষ্ট API প্রক্সিতে যেখানে ব্যর্থতা ঘটেছে সেখানে সমস্ত LookupCache নীতিগুলি পরীক্ষা করুন৷ নির্দিষ্ট LookupCache নীতি চিহ্নিত করুন যেখানে <CacheResource> এলিমেন্টে অবৈধ ক্যাশে (ধাপ #1-এ চিহ্নিত) নির্দিষ্ট করা আছে।

    উদাহরণ স্বরূপ, নিম্নলিখিত নীতি <CacheResource> এর মানকে tokencache হিসাবে নির্দিষ্ট করে, যা ত্রুটি বার্তার সাথে মেলে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <LookupCache async="false" continueOnError="false" enabled="true" name="LookupCache-Token">
        <DisplayName>LookupCache-Token</DisplayName>
        <Properties/>
        <CacheKey>
            <Prefix/>
            <KeyFragment ref="request.queryparam.client_id"/>
        </CacheKey>
        <CacheResource>tokencache</CacheResource>
        <CacheLookupTimeoutInSeconds/>
        <Scope>Exclusive</Scope>
        <ExpirySettings>
            <TimeoutInSec>3600</TimeoutInSec>
        </ExpirySettings>
        <AssignTo>usertoken</AssignTo>
    </LookupCache>
    
  3. ক্যাশে (পদক্ষেপ # 1 এ নির্ধারিত) নির্দিষ্ট পরিবেশে সংজ্ঞায়িত করা হয়েছে কিনা তা যাচাই করুন (ধাপ # 1 এ চিহ্নিত)।

    এজ UI-তে, ADMIN > Environment > test- এ নেভিগেট করুন এবং এনভায়রনমেন্ট কনফিগারেশনের ক্যাশে ট্যাবে ক্যাশে বিদ্যমান কিনা তা পরীক্ষা করুন। যদি ক্যাশে বিদ্যমান না থাকে, তাহলে এটি ত্রুটির কারণ।

    উদাহরণস্বরূপ, নীচের স্ক্রিনশটটিতে লক্ষ্য করুন যে tokencache নামের ক্যাশেটির অস্তিত্ব নেই।

    কারণ tokencache নামের ক্যাশে test পরিবেশে সংজ্ঞায়িত করা হয়নি, আপনি ত্রুটিটি পান:

    Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
    
    

রেজোলিউশন

নিশ্চিত করুন যে <CacheResource> উপাদানে উল্লেখ করা ক্যাশের নামটি পরিবেশে তৈরি করা হয়েছে যেখানে আপনি API প্রক্সি স্থাপন করতে চান।

কিভাবে ক্যাশে তৈরি করতে হয় সে সম্পর্কে তথ্যের জন্য একটি পরিবেশ ক্যাশে তৈরি এবং সম্পাদনা করুন

CacheNotFound

ত্রুটি বার্তা

এজ ইউআই বা এজ ম্যানেজমেন্ট এপিআই এর মাধ্যমে এপিআই প্রক্সি স্থাপনের ফলে এই ধরনের একটি ত্রুটি বার্তা আসে এবং এপিআই প্রক্সির স্থাপনার স্থিতি আংশিকভাবে স্থাপন করা হিসাবে চিহ্নিত করা হয়:

Error: Cache : cache_resource, not found in organization : organization__environment.

উদাহরণ ত্রুটি বার্তা

Error Cache : configCache, not found in organization : kkalckstein-eval__test

কারণ

ত্রুটি বার্তায় উল্লিখিত নির্দিষ্ট ক্যাশে একটি নির্দিষ্ট বার্তা প্রসেসর উপাদানে তৈরি না হলে এই ত্রুটি ঘটে।

রেজোলিউশন

আপনি যদি একজন ব্যক্তিগত ক্লাউড ব্যবহারকারী হন, অনুগ্রহ করে নীচের নির্দেশাবলী অনুসরণ করুন:

  1. API প্রক্সি স্থাপনার তালিকা করুন এবং কোন বার্তা প্রসেসরে ত্রুটি আছে তা নির্ধারণ করুন steps.cache.CacheNotFound

    curl -u $USERID:$USERPASSWORD http://:8080/v1/organizations//environments//apis//revisions//deployments

    নমুনা আউটপুট

    {
      "aPIProxy" : "TestCache",
      "environment" : [ {
        "configuration" : {
          "basePath" : "/",
          "configVersion" : "SHA-512:45d3f39783414d3859bf2dec4135d8f5f9960ee6b2d361db2799c82693a8e3f8b95dbbb37c547eb3c0a3819d8ca51727f390502bcaefdf1f113263521a9023b6",
          "steps" : [ ]
        },
        "name" : "prod",
        "server" : [ {
          "pod" : {
            "name" : "pod1",
            "region" : "us-central1"
          },
          "status" : "deployed",
          "type" : [ "message-processor" ],
          "uUID" : "f2e5e34a-5630-43a9-8fef-48a5b9da76d1"
        }, {
          "pod" : {
            "name" : "pod1",
            "region" : "us-central1"
          },
          "status" : "deployed",
          "type" : [ "message-processor" ],
          "uUID" : "879a6538-a5e0-4503-b142-9cb2b4e0623d"
        }, {
        "error" : "Cache : configCache, not found in organization : kkalckstein-eval__test",
        "errorCode" : "steps.cache.CacheNotFound",
        "status" : "error",
        "type" : [ "message-processor" ],
         "uUID" : "a8f9ce0b-c32d-48a9-b26c-9c75d8bf467d"
    },
    ...
        "state" : "deployed"
      } ],
      "name" : "2",
      "organization" : "kkalckstein-eval"
      ...
    
  2. বার্তা প্রসেসরের UUID(গুলি) নোট করুন যেখানে আপনি ত্রুটিটি পর্যবেক্ষণ করেন steps.cache.CacheNotFound । UUID-এর সাথে যুক্ত মেসেজ প্রসেসরের হোস্টের নাম/আইপি ঠিকানা চিহ্নিত করুন।

  3. নির্দিষ্ট বার্তা প্রসেসরে লগ ইন করুন এবং নিম্নলিখিত কমান্ডটি ব্যবহার করে এটি পুনরায় চালু করুন:

    apigee-service edge-message-processor restart

আপনি যদি একজন পাবলিক ক্লাউড ব্যবহারকারী হন বা যদি ব্যক্তিগত ক্লাউডের জন্য সমস্যাটি থেকে যায়, সহায়তার জন্য Apigee সহায়তার সাথে যোগাযোগ করুন।