피해야 할 패턴: Postgres 데이터베이스의 Apigee 소유 스키마에 커스텀 정보 추가

Apigee Edge 문서입니다.
Apigee X 문서로 이동
정보

Edge API 분석은 Apigee Edge에서 제공하는 매우 강력한 내장 기능입니다. API 전반에서 전송되는 다양한 데이터를 수집하고 분석합니다. 캡처된 분석 데이터는 매우 유용한 통계를 제공할 수 있습니다. 예를 들어 일정 기간 동안 API 트래픽 양의 추세는 어떠한가요? 가장 많이 사용되는 API는 무엇인가요? 오류율이 높은 API는 무엇인가요?

이 데이터와 통계를 정기적으로 분석하면 현재 사용량, 비즈니스 및 향후 투자 결정 등을 기반으로 API의 향후 용량 계획과 같은 적절한 조치를 취할 수 있습니다.

애널리틱스 데이터 및 저장소

API 분석은 다음과 같은 다양한 유형의 데이터를 캡처합니다.

  • API에 대한 정보 - 요청 URI, 클라이언트 IP 주소, 응답 상태 코드 등
  • API 프록시 성능 - 성공/실패 비율, 요청 및 응답 처리 시간 등
  • 대상 서버 성능 - 성공/실패율, 처리 시간
  • 오류 정보 - 오류 수, 오류 코드, 실패한 정책, Apigee 및 대상 서버로 인한 오류 수
  • 기타 정보 - 개발자, 개발자 앱 등이 보낸 요청 수 등

이러한 모든 데이터는 Apigee Edge에서 Postgres 데이터베이스 내에서 생성 및 관리하는 analytics 스키마에 저장됩니다.

일반적으로 기본 Edge 설치에서 Postgres에는 다음과 같은 스키마가 있습니다.

analytics라는 스키마는 Edge에서 각 조직 및 환경의 모든 분석 데이터를 저장하는 데 사용됩니다. 수익 창출이 설치된 경우 rkms 스키마가 있습니다. 다른 스키마는 Postgres 내부용입니다.

analytics 스키마는 Apigee Edge가 런타임에 새 사실 테이블을 동적으로 추가하므로 계속 변경됩니다. Postgres 서버 구성요소는 팩트 데이터를 집계 테이블로 집계하여 Edge UI에 로드되고 표시합니다.

안티패턴

SQL 쿼리를 사용하여 비공개 클라우드 환경의 Postgres 데이터베이스에 있는 Apigee 소유 스키마에 맞춤 열, 테이블 또는 뷰를 직접 추가하는 것은 좋지 않습니다. 부정적인 영향을 미칠 수 있기 때문입니다.

예를 들어 자세히 설명해 보겠습니다.

아래와 같이 분석 스키마 아래에 account라는 맞춤 테이블이 생성되었다고 가정해 보겠습니다.

시간이 지나 Apigee Edge를 하위 버전에서 상위 버전으로 업그레이드해야 한다고 가정해 보겠습니다. 프라이빗 클라우드 Apigee Edge를 업그레이드하려면 다른 여러 구성요소 중 Postgres를 업그레이드해야 합니다. Postgres 데이터베이스에 맞춤 열, 테이블 또는 뷰가 추가된 경우 Apigee Edge에서 만들지 않은 맞춤 객체를 참조하는 오류와 함께 Postgres 업그레이드가 실패합니다. 따라서 Apigee Edge 업그레이드도 실패하여 완료할 수 없습니다.

마찬가지로 Postgres 데이터베이스를 비롯한 Edge 구성요소의 백업 및 복원이 실행되는 Apigee Edge 유지보수 활동 중에 오류가 발생할 수 있습니다.

영향

  • Apigee Edge에서 생성하지 않은 맞춤 객체를 참조하는 오류로 인해 Postgres 구성요소 업그레이드가 실패하여 Apigee Edge 업그레이드를 완료할 수 없습니다.
  • Apigee 애널리틱스 서비스 유지보수(백업/복원) 중에 발생하는 불일치 및 오류

권장사항

  • 열, 테이블, 뷰, 함수, 프로시저 형식의 맞춤 정보를 analytics와 같은 Apigee 소유 스키마에 직접 추가하지 마세요.
  • 맞춤 정보를 지원해야 하는 경우 통계 수집기 정책을 사용하여 analytics 스키마에 열 (필드)로 추가할 수 있습니다.

추가 자료