شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید . اطلاعات
زمان نامعتبر
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
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.
مثال تصویر خطا

علت
اگر عنصر <CacheLookupTimeoutInSeconds> از یک سیاست LookupCache روی یک عدد منفی تنظیم شود، پیادهسازی پروکسی API با شکست مواجه میشود.
برای مثال، اگر عنصر <CacheLookupTimeoutInSeconds> برابر با -1 باشد، پیادهسازی پروکسی API با شکست مواجه میشود.
تشخیص
مقدار نامعتبر مشخص شده برای عنصر
<CacheLookupTimeoutInSeconds>در سیاست LookupCache را شناسایی کنید. میتوانید این اطلاعات را در پیام خطا پیدا کنید. برای مثال، در خطای زیر، مقدار نامعتبر استفاده شده برای عنصر<CacheLookupTimeoutInSeconds>-1است:CacheLookupTimeoutInSeconds -1 value should be greater than zero.تمام سیاستهای LookupCache را در API Proxy خاص که در آن خرابی رخ داده است، بررسی کنید. ممکن است یک یا چند سیاست LookupCache وجود داشته باشد که در آنها عنصر
<CacheLookupTimeoutInSeconds>مشخص شده است. سیاست LookUpCache را که در آن مقدار نامعتبر (که در مرحله ۱ بالا مشخص شد) برای عنصر<CacheLookupTimeoutInSeconds>مشخص شده است، شناسایی کنید.برای مثال، پیکربندی سیاست زیر مقدار
<CacheLookupTimeoutInSeconds>را برابر با-1تعیین میکند که با پیام خطا مطابقت دارد:<?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>اگر
<CacheLookupTimeoutInSeconds>به عنوان یک عدد صحیح منفی مشخص شده باشد، علت خطا همین است.
وضوح تصویر
مطمئن شوید که مقدار عنصر <CacheLookupTimeoutInSeconds> از سیاست LookupCache همیشه به عنوان یک عدد صحیح غیرمنفی مشخص شده باشد.
برای اصلاح سیاست LookupCache مثال بالا، میتوانید عنصر <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>
مرجع منبع نامعتبرCache
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا رابط مدیریت Edge با این پیام خطا مواجه میشود:
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 در آن مستقر شده است، وجود نداشته باشد.
تشخیص
کش نامعتبر استفاده شده در عنصر
<CacheResource>از سیاست LookupCache و محیطی که خطا در آن رخ داده است را شناسایی کنید. میتوانید هر دوی این موارد را در پیام خطا پیدا کنید. برای مثال، در خطای زیر، نام کش نامعتبرtokencacheو نام محیطtestاست.Invalid cache resource reference tokencache in Step definition LookupCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:testتمام سیاستهای LookupCache را در API Proxy خاصی که خطا در آن رخ داده است، بررسی کنید. سیاست LookupCache خاصی را که در آن حافظه پنهان نامعتبر (شناسایی شده در مرحله ۱) در عنصر
<CacheResource>مشخص شده است، شناسایی کنید.برای مثال، سیاست زیر مقدار
<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>بررسی کنید که آیا حافظه پنهان (تعیینشده در مرحله ۱) در محیط خاص (شناساییشده در مرحله ۱) تعریف شده است یا خیر.
در رابط کاربری Edge، به مسیر ADMIN > Environment > test بروید و در تب Caches در Environment Configuration بررسی کنید که آیا کش وجود دارد یا خیر. اگر کش وجود نداشت، پس علت خطا همین است.
برای مثال، در تصویر زیر توجه کنید که کش با نام
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 را در آن مستقر کنید، ایجاد شده باشد.
برای اطلاعات بیشتر در مورد نحوه ایجاد حافظه پنهان، به ایجاد و ویرایش حافظه پنهان محیطی مراجعه کنید.
حافظه پنهان یافت نشد
پیام خطا
استقرار پروکسی API از طریق رابط کاربری Edge یا API مدیریت Edge منجر به پیام خطایی مانند این میشود و وضعیت استقرار پروکسی API به صورت «تا حدی مستقر» علامتگذاری میشود:
Error: Cache : cache_resource, not found in organization : organization__environment.
مثال پیام خطا
Error Cache : configCache, not found in organization : kkalckstein-eval__test
علت
این خطا زمانی رخ میدهد که حافظه پنهان (cache) مشخص ذکر شده در پیام خطا، روی یک جزء خاص پردازشگر پیام (Message Processor) ایجاد نشده باشد.
وضوح تصویر
اگر از فضای ابری خصوصی استفاده میکنید، لطفاً دستورالعملهای زیر را دنبال کنید:
پیادهسازیهای پروکسی 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" ...به UUID(های) پردازنده پیام که در آن خطای
steps.cache.CacheNotFoundرا مشاهده میکنید، توجه کنید. نام میزبان/آدرس IP پردازنده پیام مرتبط با UUID را شناسایی کنید.به پردازشگر پیام خاص وارد شوید و با استفاده از دستور زیر آن را مجدداً راه اندازی کنید:
apigee-service edge-message-processor restart
اگر کاربر فضای ابری عمومی هستید یا اگر مشکل در فضای ابری خصوصی همچنان ادامه دارد، برای دریافت کمک با پشتیبانی Apigee تماس بگیرید.