Populate Cache 정책 배포 오류 문제 해결

Apigee X 문서입니다.
Apigee Edge 문서 보기

InvalidCacheResourceReference

오류 메시지

다음 오류 메시지와 함께 Apigee UI 또는 API를 통한 API 프록시의 배포가 실패합니다.

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:[apiproxy_name];Organization:[organization];Environment:[environment]

오류 메시지 예시

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

오류 스크린샷 예시

테스트할 버전 2를 배포하는 중에 오류가 발생했습니다.

원인

이 오류는 PopulateCache 정책의 <CacheResource> 요소가 API 프록시가 배포되는 환경에 존재하지 않는 이름으로 설정되는 경우에 발생합니다.

진단

  1. PopulateCache 정책 이름, 정책의 <CacheResource> 요소에 사용된 잘못된 캐시, 오류가 발생한 환경을 식별합니다. 오류 메시지에서 이러한 항목을 모두 찾을 수 있습니다. 예를 들어 다음 오류에서 PopulateCache 정책 이름은 PopulateCache-Token, 잘못된 캐시의 이름은 tokencache, 환경 이름은 test입니다.

    Invalid cache resource reference tokencache in Step definition PopulateCache-Token. Context Revision:2;APIProxy:TestCache;Organization:kkalckstein-eval;Environment:test
    
  2. 실패한 PopulateCache 정책 XML을 살펴보고 <CacheResource> 요소에 지정된 캐시 이름이 오류 메시지와 일치하는지 확인합니다.

    이 예시에서 <CacheResource> 요소에 지정된 캐시 이름은 tokencache입니다.

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <PopulateCache async="false" continueOnError="false" enabled="true" name="PopulateCache-Token">
        <DisplayName>PopulateCache-Token</DisplayName>
        <Properties/>
        <CacheKey>
            <Prefix/>
            <KeyFragment ref="request.queryparam.client_id"/>
        </CacheKey>
        <CacheResource>tokencache</CacheResource>
        <Scope>Exclusive</Scope>
        <ExpirySettings>
            <TimeoutInSec>3600</TimeoutInSec>
        </ExpirySettings>
        <Source>token</Source>
    </PopulateCache>
    
  3. 특정 환경(1단계에서 식별됨)에서 캐시(1단계에서 결정됨)가 정의되었는지 확인합니다.

    Apigee UI에서 관리자 > 환경 > 테스트로 이동하여 환경 구성캐시 탭에 캐시가 있는지 확인합니다. 캐시가 없으면 오류가 발생합니다.

    예를 들어 다음 스크린샷에는 tokencache라는 캐시가 없습니다.

    환경 구성 캐시 탭

    tokencache라는 캐시는 test 환경에 정의되어 있지 않으므로 다음과 같은 오류가 발생합니다.

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

해결 방법

API 프록시를 배포하려는 환경에서 PopulateCache 정책의 <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

원인

이 오류는 오류 메시지에 언급된 특정 캐시가 특정 메시지 프로세서 구성요소에 생성되지 않으면 발생합니다. 메시지 프로세서는 Apigee를 통한 API 트래픽 흐름을 처리하는 내부 구성요소입니다.

해결 방법

도움이 필요하면 Apigee 지원팀에 문의하세요.