맞춤 변수가 애널리틱스 맞춤 보고서에 표시되지 않음

현재 Apigee Edge 문서가 표시되고 있습니다.
Apigee X 문서로 이동
정보

증상

StatisticsCollector 정책을 사용하여 만든 맞춤 변수는 Edge UI에서 애널리틱스 맞춤 보고서의 맞춤 측정기준에 표시되지 않습니다.

오류 메시지

오류가 관찰되지 않습니다.

가능한 원인

다음 표에는 이 문제의 가능한 원인이 나와 있습니다.

원인 대상:
맞춤 변수가 표준 가이드라인을 준수하지 않음 에지 프라이빗 및 퍼블릭 클라우드 사용자
StatisticsCollector 정책을 구현하는 API 프록시에 트래픽이 없습니다. 에지 프라이빗 및 퍼블릭 클라우드 사용자
맞춤 변수가 Postgres 서버로 푸시되지 않음 Edge Private Cloud 사용자

표에 있는 링크를 클릭하면 가능한 해결 방법을 확인할 수 있습니다.

맞춤 변수가 표준 가이드라인을 준수하지 않음

진단

StatisticsCollector 정책에 사용된 맞춤 변수 이름이 표준 가이드라인 ( 해결 방법 참고)을 준수하지 않으면 맞춤 보고서에 표시되지 않습니다.

아래의 코드 스니펫은 변수 이름 'product id'에 공백이 있어 맞춤 보고서의 맞춤 측정기준 아래에 표시되지 않음을 보여줍니다.

  <StatisticsCollector name="publishPurchaseDetails">
    <Statistics>
      <Statistic name="productID" ref="product id" type="string">999999</Statistic>
    </Statistics>
  </StatisticsCollector>

해상도

API 프록시 내 StatisticsCollector 정책에 사용되는 맞춤 변수 이름은 다음 가이드라인을 준수해야 합니다.

  • 이름에는 [a~z][0~9] 및 '_'를 포함할 수 있습니다.
  • 이름에는 공백이 포함될 수 없습니다. 예를 들어 위에 표시된 코드 샘플에서는 변수 이름을 'product_id'로 변경해야 합니다.
  • 대소문자를 구분하지 않습니다.
  • 다음 링크의 표에 나열된 예약된 키워드는 허용되지 않습니다. 예를 들어 'user'는 허용되지 않습니다. 자세한 내용은 SQL 키워드를 참조하세요.

문제가 지속되면 StatisticsCollector 정책을 구현하는 API 프록시에 트래픽 없음으로 이동하세요.

StatisticsCollector 정책을 구현하는 API 프록시에 트래픽이 없습니다.

진단

StatisticsCollector 정책을 구현하는 API 프록시에 트래픽이 없으면 맞춤 변수가 맞춤 보고서에 표시되지 않습니다.

해상도

StatisticsCollector 정책을 구현하는 API 프록시를 호출합니다.

잠시 기다린 후 맞춤 보고서의 맞춤 측정기준에 맞춤 변수가 표시되는지 확인합니다.

문제가 지속되면 맞춤 변수가 Postgres 서버로 푸시되지 않음을 진행하세요.

맞춤 변수가 Postgres 서버로 푸시되지 않음

진단

API 프록시에서 맞춤 변수가 생성되고 API 호출이 이루어지면 변수가 먼저 메시지 프로세서의 메모리에 저장됩니다. 그런 다음 메시지 프로세서는 새 변수에 대한 정보를 주Keeper로 전송하고, 동물원은 이를 Postgres 서버로 전송하여 Postgres 데이터베이스의 열로 추가합니다.

가끔 네트워크 문제로 인해 주Keeper의 알림이 Postgres 서버에 도달하지 못할 수 있습니다. 이 오류로 인해 맞춤 변수가 맞춤 보고서에 표시되지 않을 수 있습니다.

맞춤 변수가 누락된 위치를 확인하는 방법은 다음과 같습니다.

  1. 다음 명령어를 사용하여 JoKeeper 트리를 생성합니다.
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
  2. JoKeeper 트리 출력에서 맞춤 변수를 검색합니다.
  3. 맞춤 변수가 JoKeeper 트리에 있으면 다음 명령어를 실행하여 커스텀 변수가 Postgres 데이터베이스에 추가되었는지 확인합니다.
    1. Postgres 노드에서 PostgreSQL에 로그인합니다.
      psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
    2. 다음 SQL 쿼리를 실행합니다.
      select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS
        where table_name = 'orgname.envname.fact';
  4. 팩트 테이블에 맞춤 변수 열이 표시되지 않아 맞춤 측정기준에 표시되지 않을 가능성이 높습니다.

해상도

해결 방법 1: Postgres 서버 다시 시작

  1. Postgres 서버를 다시 시작하여 Jokeeper에서 분석과 관련된 모든 정보를 읽도록 강제합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

    문제가 지속되면 해결 방법 2를 적용하세요.

해결 방법 2: forceonboard 속성 사용 설정

아래 단계에 따라 forceonboard 속성을 사용 설정합니다.

  1. Postgres 서버 머신에 /opt/apigee/customer/application/postgres-server.properties 파일이 없으면 이 파일을 만듭니다.
  2. 이 파일에
    conf_pg-agent_forceonboard=true
    줄을 추가합니다.
  3. 다음 명령어를 사용하여 이 파일이 Apigee에서 소유되는지 확인합니다.
    chown apigee:apigee /opt/apigee/customer/application/postgres-server.properties
  4. Postgres 서버를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  5. Postgres 서버가 2개 이상인 경우 모든 Postgres 서버에서 위의 단계를 반복합니다.
  6. StatisticsCollector 정책을 사용하는 API 프록시를 배포 취소하고 배포합니다.
  7. API 호출을 실행합니다.
  8. 맞춤 보고서의 맞춤 측정기준에 맞춤 변수가 표시되는지 확인합니다.

문제가 계속되면 Apigee Edge 지원팀에 문의하세요.