이 페이지는 Apigee 및 Apigee Hybrid에 적용됩니다.
Apigee Edge 문서 보기
API 모니터링의 주요 목적 중 하나는 트래픽이나 지연 시간 급증과 같은 비정상적인 이벤트나 패턴에 대한 정보를 제공하는 것입니다. 이러한 이벤트를 추적하려면 지정된 이벤트가 발생하면 트리거되는 알림을 설정하면 됩니다. 알림을 트리거하는 실제 이벤트를 이슈라고 합니다.
알림에 대한 특정 규칙을 설정할 수 있습니다. 예를 들어 프록시의 500 응답 코드(내부 서비스 오류)에 의해 트리거될 수 있습니다. 알림 이슈가 발생하면 Google Cloud 콘솔 알림 페이지의 이슈 창에서 세부정보를 볼 수 있습니다.
특정 알림이 실행될 때 알림을 받으려면 해당 알림에 대한 알림을 설정하면 됩니다. 이슈가 발생하면 Apigee는 추가로 조사할 수 있도록 Google Cloud 콘솔 및 Apigee UI에 대한 링크가 있는 이벤트 요약이 포함된 알림을 보냅니다.
API 모니터링에는 다음의 2가지 알림 유형이 있습니다.
- 측정항목 기반 알림: API 측정항목의 변경에 의해 트리거됩니다.
- 로그 기반 알림: Cloud Logging에서 저장하는 API 데이터를 기반으로 합니다.
측정항목 기반 알림
측정항목 기반 알림은 API 데이터의 측정항목이 지정된 수준에 도달하거나 급변하기 시작하면 트리거됩니다. 두 가지 기본 속성을 사용하여 알림 규칙을 정의합니다.
- 측정항목: 알림을 트리거하는 수량입니다(예: 요청 수).
- 기준: 알림을 트리거하기 위해 측정항목이 도달해야 하는 수준입니다.
다음 섹션에서는 측정항목 기반 알림의 예시를 제공합니다.
프록시의 응답 코드 500 알림
다음 예시에서는 응답 코드 500(내부 서버 오류)이 반환되는 경우의 알림을 만듭니다. 모든 응답 코드에서 유사한 알림을 만들 수 있습니다.
알림을 만들려면 먼저 다음 단계를 수행합니다.
Google Cloud 콘솔에서 알림 정책 만들기 페이지를 엽니다.
- 측정항목 선택을 클릭합니다.
- 활성 버튼을 선택 해제합니다.
참고: 조직에 최근 API 트래픽 데이터가 없는 경우 이 옵션을 선택하지 않는 한 다음 단계의 측정항목이 표시되지 않습니다.
- 다음과 같이 측정항목을 선택합니다.
- Apigee Hybrid v1.12를 사용하는 경우 측정항목 선택 필드에서 다음을 복사하여 붙여넣습니다.
apigee.googleapis.com/proxy/response_count
- Apigee Proxy를 선택합니다.
- 오른쪽에 열리는 창에서 프록시를 선택합니다.
- 다음의 오른쪽 창에서 Apigee 프록시 응답 수를 선택합니다.
- 적용을 클릭합니다.
- Apigee Hybrid v1.12를 사용하는 경우 측정항목 선택 필드에서 다음을 복사하여 붙여넣습니다.
- 다음과 같이 응답 코드의 필터를 추가합니다.
- 필터 추가를 클릭합니다.
- 필터 필드를 클릭하고 드롭다운 메뉴에서 response_code를 선택합니다.
- 비교 연산자에서 =를 선택합니다.
- 값 필드에 500을 입력합니다.
- 완료를 클릭합니다.
알림 트리거 구성
알림을 트리거하는 이벤트를 구성하려면 먼저 왼쪽 창에서 트리거 구성을 클릭합니다. 그러고 나서 다음 단계를 수행합니다.
- 조건 유형에서 임계값을 선택합니다.
- 알림 트리거 필드에서 모든 시계열 위반을 선택합니다.
- 임계값 위치 필드에서 임계값 초과를 선택합니다.
- 임계값 필드에 1을 입력합니다.
이 설정을 사용하면 코드 500이 포함된 응답이 반환될 때마다 알림이 트리거됩니다.
다음을 클릭하여 알림 구성 및 완료 창을 엽니다.
경고 알림 설정
알림 구성 및 알림 완료 창에서 알림이 트리거될 때 전송되는 알림을 설정할 수 있습니다. 방법은 다음과 같습니다.
알림 채널 필드를 클릭합니다. 이메일 주소나 SMS 번호 등 알림 채널을 이미 만든 경우 알림 채널에서 선택할 수 있습니다.
그렇지 않으면 알림 채널 관리를 선택하여 채널을 추가해야 합니다. 그러면 하나 이상의 채널을 추가할 수 있는 알림 채널 창이 열립니다. 자세한 내용은 알림 채널 관리를 참조하세요. 완료되면 알림 구성 및 완료 창으로 돌아갑니다.
참고: 새 채널을 만든 후 표시하려면 알림 채널 관리 옆에 있는 새로고침 버튼을 클릭해야 할 수 있습니다. 알림 채널을 하나 이상 선택한 후 확인을 클릭합니다.
- 문서 필드에 알림과 함께 전송될 메시지를 추가할 수 있습니다. 예를 들어 메시지는 알림의 이유를 설명하고 알림 대응 방법을 설명하는 문서의 링크가 포함될 수 있습니다.
- 다음을 클릭하여 알림 세부정보를 검토합니다. 만족하면 정책 만들기를 클릭하여 알림 정책을 만듭니다.
조건 추가: 프록시의 HTTP POST 요청에 대한 응답 코드 500 알림
한 알림에 대한 여러 조건을 만들 수 있습니다. 예를 들어 이전 섹션에 설명된 프록시의 응답 코드 500에 대한 알림에서 HTTP POST 요청에 대해서만 알림이 트리거되는 조건을 추가할 수 있습니다. 이렇게 하려면 이전 예시와 동일한 단계를 따르되 8단계를 수행한 후 다음과 같이 다른 필터를 추가합니다.
- 필터 추가를 클릭합니다.
- 필터 필드를 클릭하고 드롭다운 목록에서 HTTP 메서드를 선택합니다.
- 비교 연산자 필드에서 =를 선택합니다.
- 값 필드에 POST를 입력합니다.
- 완료를 클릭합니다.
그런 다음 알림 트리거 구성의 단계를 계속합니다. 완료된 후 프록시가 HTTP POST 요청에서 500 응답 코드를 수신하면 알림이 트리거됩니다.
관련 예시는 응답 코드 및 HTTP 메서드 조합에 대한 알림을 참조하세요.
이슈 세부정보 보기
알림을 트리거하는 API 이벤트를 이슈라고 합니다. Google Cloud 콘솔 알림 페이지에서 최근 이슈의 세부정보를 볼 수 있습니다.
측정항목 및 필터
측정항목은 알림을 트리거하는 수량입니다(예: 요청 수). 이 섹션에서는 측정항목 기반 알림을 만드는 데 사용할 수 있는 측정항목과 필터에 대해 설명합니다. 통계에는 다음과 같이 두 가지 유형이 있습니다.
- 새로운 측정항목: 성능과 신뢰성이 향상된 새 버전의 Apigee 측정항목입니다. 이러한 측정항목은 현재 Apigee 및 Apigee Hybrid v1.12 이상에서 사용할 수 있습니다. 가능하면 새 측정항목을 사용하는 것이 좋습니다.
- 원본 측정항목: 원본 측정항목은 Apigee Hybrid v1.10 및 v1.11에서 계속 사용할 수 있습니다.
새 측정항목
아래 표에는 새 측정항목이 나열되어 있습니다.
측정항목 | 설명 |
---|---|
apigee.googleapis.com/proxy/details |
Apigee 환경에 배포된 프록시와 관련된 세부정보입니다. |
apigee.googleapis.com/proxy/request_count |
마지막 샘플이 기록된 이후 Apigee 프록시에 대한 요청 수입니다. |
apigee.googleapis.com/proxy/response_count |
Apigee API 프록시에서 전송한 응답 수입니다. |
apigee.googleapis.com/proxy/latencies |
Apigee 프록시에서 요청을 수신한 시간부터 Apigee 프록시에서 클라이언트로 응답을 전송한 시간까지 계산되는 지연 시간의 분포입니다. |
apigee.googleapis.com/target/request_count |
마지막 샘플이 기록된 이후 Apigee 대상으로 전송된 요청 수입니다. |
apigee.googleapis.com/target/response_count |
마지막 샘플이 기록된 이후 Apigee 대상에서 수신된 응답 수입니다. |
apigee.googleapis.com/target/latencies |
요청이 Apigee 대상으로 전송된 시간부터 Apigee 프록시에서 응답을 수신한 시간까지 계산되는 지연 시간의 분포입니다. 시간에는 Apigee API 프록시 오버헤드가 포함되지 않습니다. |
원본 측정항목
다음은 위 표에 표시된 측정항목의 원본 버전 목록이며 Apigee Hybrid에서 계속 사용할 수 있습니다.
측정항목 | 설명 |
---|---|
apigee.googleapis.com/proxyv2/details |
Apigee 환경에 배포된 프록시와 관련된 세부정보입니다. |
apigee.googleapis.com/proxyv2/request_count |
Apigee API 프록시가 수신한 총 요청 수입니다. |
apigee.googleapis.com/proxyv2/response_count |
Apigee API 프록시에서 반환한 총 응답 수입니다. |
apigee.googleapis.com/proxyv2/latencies_percentile |
요청에 대한 모든 API 프록시 응답의 백분위수입니다. |
apigee.googleapis.com/targetv2/request_count |
Apigee API 타겟이 수신한 총 요청 수입니다. |
apigee.googleapis.com/targetv2/response_count |
Apigee API 타겟이 반환한 총 응답 수입니다. |
apigee.googleapis.com/targetv2/latencies_percentile |
요청에 대한 모든 API 타겟 응답의 백분위수입니다. |
필터
필터를 사용하면 API 데이터의 하위 집합에 대한 알림을 만들 수 있습니다. 필터는 하위 집합을 정의하는 조건을 지정합니다. 예를 들어 단일 프록시 데이터를 기반으로 알림을 만들 수 있습니다.
다음 필터 중에서 선택할 수 있습니다.
필터 | 설명 | 필터를 적용할 수 있는 측정항목 |
---|---|---|
env |
데이터의 환경입니다. | 전체 |
location |
데이터의 위치입니다. | 전체 |
proxy_name |
데이터의 프록시입니다. | 전체 |
proxy_deployment_type |
Apigee 프록시의 배포 유형 | apigee.googleapis.com/proxy/details apigee.googleapis.com/proxyv2/details |
runtime_version |
데이터의 런타임 버전입니다. | 원본 측정항목 |
instance_id |
데이터의 인스턴스 ID입니다. | 원본 측정항목 |
method |
데이터의 HTTP 메서드입니다. | 전체 |
response_code |
데이터의 HTTP 응답 코드입니다. | apigee.googleapis.com/proxy/response_count apigee.googleapis.com/proxyv2/response_count |
fault_code |
데이터의 오류 코드입니다. | apigee.googleapis.com/proxy/response_count apigee.googleapis.com/proxyv2/response_count |
fault_source |
데이터의 오류 소스입니다. | apigee.googleapis.com/proxy/response_count apigee.googleapis.com/proxyv2/response_count |
percentile |
Apigee 프록시 응답 지연 시간 백분위수입니다. | apigee.googleapis.com/proxyv2/latencies_percentile |
로그 기반 알림
이전 섹션에서 설명한 측정항목 기반 알림 외에도 Cloud Logging에서 저장한 API 데이터를 모니터링하는 로그 기반 알림을 만들 수 있습니다.
로그 기반 알림 설정
다음 예시에서는 로그 기반 알림을 설정하는 방법을 보여줍니다. 자세한 내용은 로그 탐색기에서 쿼리 빌드를 참조하세요.
- Google Cloud 콘솔에서 로그 탐색기를 엽니다.
- 로그 탐색기의 오른쪽에서 쿼리 표시를 선택합니다.
- 쿼리 창에 아래 예시와 같은 쿼리를 입력합니다.
resource.type="apigee.googleapis.com/Environment" logName="projects/<project_id>/logs/apigee.googleapis.com%2Fanomaly_event"
- 쿼리 실행을 클릭합니다. 확인에 쿼리가 알림을 실행할 로그 항목을 반환하는지 여부를 나타내는 결과가 표시됩니다.
- 쿼리 창 아래에 있는 알림 만들기를 클릭합니다.
- 로그 기반 알림 정책 만들기 대화상자의 절차에 따라 알림을 만듭니다. 자세한 내용은 로그 기반 알림 구성을 참조하세요.