現在、Apigee と Apigee ハイブリッドのドキュメントを表示しています。
Apigee Edge のドキュメントを表示する
InvalidCacheResourceReference
エラー メッセージ
Apigee UI または API を使用した API プロキシのデプロイに失敗すると、次のエラー メッセージが表示されます。
Error Deploying Revision revision_number to environment Invalid cache resource reference [cache_resource] in Step definition [invalidate_cache_policy_name]. Context Revision:[revision_number];APIProxy:[apiproxy_name];Organization:[organization];Environment:[environment]
エラー メッセージの例
Error Deploying Revision 2 to test
Invalid cache resource reference tokencache in Step definition InvalidateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
エラーのスクリーンショットの例
原因
このエラーは、API プロキシがデプロイされている環境に存在しない名前が InvalidateCache ポリシーの <CacheResource>
要素に設定されている場合に発生します。
診断
InvalidateCache ポリシー名、InvalidateCache ポリシーの
<CacheResource>
要素で使用されている無効なキャッシュ、エラーが発生した環境を特定します。これらの項目はすべてエラー メッセージで確認できます。たとえば、次のエラーでは、InvalidateCache ポリシー名はInvalidateCache-Token
、無効なキャッシュの名前はtokencache
、環境名はtest
です。Invalid cache resource reference tokencache in Step definition InvalidateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
失敗した InvalidateCache ポリシー XML を調べ、
<CacheResource>
要素に指定されたキャッシュ名がエラー メッセージと一致しているかを確認します。この例では、
<CacheResource>
要素で指定されたキャッシュ名はtokencache
です。<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <InvalidateCache async="false" continueOnError="false" enabled="true" name="InvalidateCache-Token"> <DisplayName>InvalidateCache-Token</DisplayName> <Properties/> <CacheKey> <Prefix/> <KeyFragment ref=""/> </CacheKey> <CacheResource>tokencache</CacheResource> <Scope>Exclusive</Scope> <CacheContext> <APIProxyName/> <ProxyName>default</ProxyName> <TargetName>default</TargetName> </CacheContext> <PurgeChildEntries>false</PurgeChildEntries> </InvalidateCache>
ステップ 1 で確認したキャッシュが、ステップ 1 で特定された固有の環境で定義されているかどうかを確認します。
Apigee UI で、[Admin] > [Environment] > [test] に移動し、[Environment Configuration] の [Caches] タブにキャッシュが存在するかどうかを確認します。キャッシュが存在しない場合、それがエラーの原因です。
たとえば、次のスクリーンショットでは、
tokencache
という名前のキャッシュは存在しません。tokencache
という名前のキャッシュがtest
環境で定義されていないため、次のエラーが発生します。Invalid cache resource reference tokencache in Step definition InvalidateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
解決策
API プロキシをデプロイする環境で、InvalidateCache ポリシーの <CacheResource>
要素で指定したキャッシュが作成されていることを確認します。
CacheNotFound
エラー メッセージ
Apigee UI または API による API プロキシのデプロイで、次のようなエラー メッセージが表示され、API プロキシのデプロイ ステータスは部分的にデプロイされたものとしてマークされます。
Error: Cache : cache_resource, not found in organization : organization__environment.
エラー メッセージの例
Error Cache : configCache, not found in organization : kkalckstein-eval__test
原因
このエラーは、エラー メッセージに記述されているキャッシュが、特定の Message Processor コンポーネント上に作成されていない場合に発生します。Message Processor は、Apigee を介した API トラフィックのフローを処理する内部コンポーネントです。
解決策
Apigee サポートまでお問い合わせください。