<ph type="x-smartling-placeholder"></ph>
현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서. 정보
증상
다음을 사용하여 만든 맞춤 변수는 통계 수집기 정책이 애널리틱스 맞춤 보고서의 맞춤 측정기준에 표시되지 않는 경우 Edge UI입니다.
오류 메시지
각 인스턴스를 다시 시작하면 Edge-postgres-server 시스템 로그에 다음과 같은 오류가 표시됩니다. 경로가 누락된 조직/환경 조합:
KeeperErrorCode = NoNode for /organizations/<ORG>/environments/<ENV>/properties 2018-03-29 16:14:48,980 pool-10-thread-2 ERROR ZOOKEEPER - ZooKeeperServiceImpl.getData() : Could not get data for path: /organizations//environments/ /properties, reason: KeeperErrorCode = NoNode for /organizations/ /environments/ /properties
가능한 원인
원인 | 설명 | 해당 문제 해결 지침 |
---|---|---|
조직 및 환경 조합에 대한 주키퍼 속성 경로가 누락되었습니다. | 주키퍼 경로가 /organizations/ 인 경우
맞춤 측정기준을 만들 수 없습니다. |
Edge 프라이빗 클라우드 사용자 |
원인: 조직 및 환경 조합에 대한 ZaKeeper 속성 경로가 없습니다.
진단
다음을 통해 조직-환경 조합에 대해 애널리틱스를 사용 설정
<ph type="x-smartling-placeholder"></ph>
Analytics API를 사용 설정하여 /organizations/
를 채웁니다.
있습니다. 이 API가 실패하면 Edge-postgres-server 구성요소가 만들 수 없습니다.
맞춤 측정기준을 사용하며, system.log에 다음 오류가 표시됩니다.
KeeperErrorCode = NoNode for /organizations/example/environments/prod/properties 2018-03-29 16:14:48,980 pool-10-thread-2 ERROR ZOOKEEPER - ZooKeeperServiceImpl.getData() : Could not get data for path: /organizations/example/environments/prod/properties, reason: KeeperErrorCode = NoNode for /organizations/digi/environments/sandbox/properties
일반적으로 한 조직에서 두 개 이상의 직원이 온보딩할 때 이러한 상황이 발생합니다. 동일한 postgres-server UUID를 사용하는 애널리틱스 그룹이 존재합니다. 얼마나 많은 애널리틱스가 있는지 그룹이 있으면 다음 API 호출을 실행하세요.
curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"
이 API가 여러 그룹을 반환하는 경우 문제의 원인일 가능성이 높습니다. 다음 예에서는 하이픈으로만 구분된 두 그룹이 있습니다. axgroup-001 및 axgroup001
[ { "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "datastores" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ], "properties" : { } } ], "data-processors" : { } }, { "name" : "axgroup001", "properties" : { }, "scopes" : [ "example~prod" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "datastores" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ], "properties" : { } } ], "data-processors" : { }
구체적으로 이 문제는 각각에 구성된 postgres-server UUID가 axgroup은 동일합니다. 이를 확인하는 빠른 방법은 다음을 실행하는 것입니다.
curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"|grep -B7 "postgres-server"
다음 샘플 출력은 postgres-server UUID를 빠르게 비교하여 모두 동일합니다.
{ "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ]-- "name" : "axgroup001", "properties" : { }, "scopes" : [ "myorg~prod" ], "uuids" : { "qpid-server" : [ "94c96375-1ca7-412d-9eee-80fda94f6e07" ], "aries-datastore" : [ ], "postgres-server" : [ "8ee86b70-5b33-44b6-b2f8-1b0ec0ec8d77" ],
해상도
동일한 PostgreSQL 서버 집합을 두 개의 axgroup에 할당할 수 없습니다. 가장 빠른 해결 방법은 하나의 axgroup에서 postgres 서버 정보를 삭제하는 것입니다. 모든 범위 (조직, 환경 조합)를 다른 그룹에 할당합니다. 이렇게 하려면 다음 단계를 따르세요.
- 안내에 따라 두 axgroup 중 하나에서 postgres 서버 구성요소를 삭제합니다. <ph type="x-smartling-placeholder"></ph> 분석 그룹에서 애널리틱스 구성요소 추가 및 삭제 비프로덕션 범위에서만 문제가 발생하는 경우 이 연습의 프로덕션 범위가 없습니다. 그렇지 않은 경우 최소 개수의 범위를 지정합니다
- 더 이상 postgres 서버가 없는 axgroup에서 모든 범위를 삭제하고
axgroup에서 맞춤 측정기준 문제가 발생한 경우입니다. 가정
위 예의
axgroup-001
은 사용하려는 그룹입니다. 다음을 사용하여 myorg 조직의 범위를 삭제해야 합니다. 및 prod 환경:curl -u username:password -X DELETE 'http://management-server-host:8080/v1/analytics/groups/ax/axgroup001/scopes?org=myorg&env=prod'
- 다음을 사용하여 애널리틱스를 사용 설정합니다. <ph type="x-smartling-placeholder"></ph> 애널리틱스 API를 사용 설정합니다.
- postgres 마스터 노드에서 Edge-postgres-server 구성요소를 다시 시작합니다.
Edge-qpid-server 구성요소를 설치합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- 위의 오류 메시지 섹션에 제공된 오류가 있는지 확인합니다.
Postgres 서버의 로그 파일에서 더 이상 발생하지 않습니다.
/opt/apigee/var/log/edge-postgres-server/logs/system.log
입니다. - 맞춤 측정기준이 Edge UI에 표시되는지 확인합니다.
문제가 지속되면 진단 정보를 수집해야 함으로 이동하세요.
진단 정보 수집 필요
위의 안내를 따랐는데도 문제가 계속되면 확인할 수 있습니다 Apigee Edge 지원팀에 문의하여 공유하세요.
- Edge-postgres-server
/opt/apigee/var/log/edge-postgres-server/logs/system.log
가장 최근의 재시작 시점에서부터 실행됩니다 - 다음 Management API 호출의 출력:
curl -u username:password "http://management-server-host:8080/v1/analytics/groups/ax"
- 다음 명령어를 사용하여 가져온 ZaKeeper 트리 출력입니다.
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt