교통정보 알림 설정

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

트래픽 알림을 사용하면 환경, 프록시 또는 리전의 트래픽이 일정 기간 동안 지정된 비율만큼 변경될 때 알림을 보낼 수 있습니다.

다음과 같이 기간을 설정합니다.

  • 1시간
  • 1일
  • 7일
  • 15일 (API만 해당)
  • 30일 (API 전용)

알림은 현재 기간의 트래픽을 이전 기간의 트래픽과 비교하는 방식으로 작동합니다. 예를 들어 시간 범위를 1시간으로 지정합니다. 그런 다음 알림은 최근 1시간 동안의 트래픽을 이전 시간의 트래픽과 비교하여 트래픽의 변화율을 계산합니다.

percentChange = ((currentTraffic - previousTraffic) / previousTraffic) * 100

양수 값은 트래픽이 증가했음을 의미하고 음수 값은 트래픽이 감소했음을 의미합니다.

그런 다음 지정된 기간 동안 API 트래픽의 증가 또는 감소 비율로 트래픽 알림을 트리거하는 기준을 설정합니다.

이 비율을 설정하기 전에 일반적인 트래픽 패턴과 일치하는지 확인하세요. 예를 들어 API 트래픽이 일반적으로 하루 동안 변동하며 특정 피크 시간에 시간당 최대 100%까지 급증한다면 이러한 급증은 정상이며 알림을 트리거해서는 안 됩니다. 하지만 시간별 트래픽이 50% 증가할 때 알림을 트리거하도록 구성하면 정상 트래픽에 대해 불필요한 알림을 받게 됩니다.

알림에 관한 자세한 내용은 알림 및 알림 설정을 참고하세요.

교통정보 경보 및 알림 추가

교통정보 경보 및 알림을 추가하려면 다음 단계를 따르세요.
  1. Edge UI에서 분석 > 경고 규칙을 클릭합니다.
  2. +경고를 클릭합니다.
  3. 알림에 대한 다음과 같은 일반 정보를 입력합니다.
    필드 설명
    알림 이름 경고의 이름입니다. 트리거를 올바르게 설명하고 유용한 이름을 사용합니다. 이름은 128자(영문 기준)를 초과할 수 없습니다.
    설명 알림에 대한 설명입니다.
    알림 유형 총 트래픽을 선택합니다. 자세한 내용은 알림 유형 정보를 참고하세요.
    환경 드롭다운 목록에서 환경을 선택합니다.
    상태 전환하여 알림을 사용 설정 또는 사용 중지합니다.
  4. 알림을 트리거할 조건의 기준과 측정기준을 정의합니다.
    조건 필드 설명
    임계값

    이전 시간 간격과 비교하여 트래픽이 특정 비율만큼 증가하거나 감소할 때 알림을 높이도록 지정합니다.

    증가율을 0% 이상의 값으로 설정합니다. 감소 비율을 0~100% 이하의 값으로 설정합니다.

    다음의 시간 간격을 선택할 수 있습니다.

    • 1시간
    • 1일
    • 1주일
    측정기준

    +측정기준 추가를 클릭하고 API 프록시 및 리전을 포함하여 결과를 반환할 측정기준 세부정보를 지정합니다.

    특정 측정기준을 다음으로 설정:

    • 프록시 - 특정 프록시 또는 모든 프록시로 설정합니다. 프록시'Any' 값을 지원하지 않습니다. 대신 원하는 각 프록시에 대해 별도의 알림을 추가할 수 있습니다.
    • 리전 - 특정 리전 또는 모든 리전으로 설정합니다. 리전'Any' 값을 지원하지 않습니다. 대신 관심 있는 각 리전에 별도의 알림을 추가할 수 있습니다.
  5. 경고 알림을 추가하려면 +알림을 클릭합니다.
    알림 세부정보 설명
    채널 사용할 알림 채널을 선택하고 대상(Email, Slack, PagerDuty 또는 웹훅)을 지정합니다.
    대상 선택한 채널 유형에 따라 대상 유형을 지정합니다.
    • 이메일 - 이메일 주소(예: joe@company.com)
    • Slack - Slack 채널 URL(예: https://hooks.slack.com/services/T00000000/B00000000/XXXXX)
    • PagerDuty - PagerDuty 코드(예: abcd1234efgh56789)
    • 웹훅 - 웹훅 URL(예: https://apigee.com/test-webhook)

      참고: 알림당 대상을 하나만 지정할 수 있습니다. 동일한 채널 유형에 여러 대상을 지정하려면 알림을 더 추가하세요.

  6. 알림을 더 추가하려면 이전 단계를 반복합니다.
  7. 알림을 추가한 경우 다음 필드를 설정합니다.
    필드 설명
    플레이북 (선택사항) 알림 실행 시 문제를 해결하기 위한 권장 조치에 대한 간단한 설명을 제공하는 자유 형식 텍스트 입력란입니다. 권장사항을 참조하는 내부 위키 또는 커뮤니티 페이지의 링크를 지정할 수도 있습니다. 이 필드의 정보가 알림에 포함됩니다. 이 필드의 내용은 1,500자를 초과할 수 없습니다.
    제한 알림을 전송할 빈도입니다. 드롭다운 목록에서 값을 선택합니다.
  8. 저장을 클릭합니다.

이벤트 대시보드에서 알림 보기

Edge는 알림 조건을 감지하면 Edge UI의 이벤트 대시보드에 조건을 자동으로 로깅합니다. 이벤트 대시보드에 표시되는 이벤트 목록에는 고정 알림과 인증서의 모든 알림이 포함됩니다.

알림을 보려면 다음 단계를 따르세요.

  1. Edge UI에서 분석 > 이벤트를 클릭합니다. 새로운 이벤트 대시보드가 나타납니다.

  2. 다음을 기준으로 이벤트 대시보드를 필터링합니다.

    • 환경
    • 리전
    • 기간
  3. 이벤트 대시보드에서 행을 선택하여 만료 인증서가 포함된 키 저장소를 표시하여 알림을 자세히 조사하세요. 키 저장소 페이지에서 새 인증서를 업로드하고 만료되는 인증서를 삭제할 수 있습니다.

교통정보 알림과 함께 알림 API 사용

교통정보 알림을 만들고 관리하는 데 사용하는 대부분의 API는 다른 알림 유형에서 사용하는 API와 동일합니다.

하지만 일부 API에는 이상 알림을 지원하는 데 사용되는 다음과 같은 추가 속성이 있습니다.

  • 알림 받기 - 수정된 알림 및 이상치 알림을 포함한 모든 알림을 표시합니다.
  • 알림 만들기 - 수정된 알림 또는 이상치 알림을 만듭니다.
  • 알림 업데이트: 고정 또는 이상 알림 정의를 업데이트합니다.

교통정보 알림 만들기 또는 업데이트

현재 다른 알림 유형과 동일한 API를 사용하여 트래픽 알림을 만들거나 업데이트합니다. 트래픽 알림을 만들거나 업데이트하는 API 호출의 본문은 다른 알림에 사용된 것과 동일하지만 다음과 같은 변경사항이 있습니다.

  • 알림이 교통정보 알림임을 지정하려면 다음 새 속성을 추가합니다.

    "alertType": "runtime"
    "alertSubType": "trafficfixed"

    이러한 속성의 기본값은 다음과 같습니다.

    "alertType": "runtime"
    "alertSubType": "fixed"
  • conditions 배열의 dimensions 요소에서:
    • org, env, proxy, region 속성의 값을 설정해야 합니다. 이러한 속성만 지원됩니다. proxyregionALL로 설정할 수 있습니다.
    • traffic 속성의 값을 total로 설정해야 합니다.
  • conditions 배열에서:

    • metrics 속성의 값은 trafficChange여야 합니다.
    • comparator 속성은 increasedBy 또는 decreasedBy로 설정해야 합니다.
    • threshold 속성에는 트래픽의 증가 또는 감소 비율을 지정하는 양수 값이 포함되며, 여기서 1.0 값은 100%에 해당합니다. increasedBy의 경우 값은 0.0 (0%) 이상이어야 합니다. decreasedBy의 경우 값은 0.0 (0%) 이상, 1.0 (100%) 이하여야 합니다.
    • durationSeconds 속성은 3600 (1시간), 86400 (1일), 604800 (7일), 1296000 (15일), 2592000 (30일) 값 중 하나로 설정해야 합니다.
  • reportEnabled 속성은 교통정보 알림에 지원되지 않습니다.
다음 예시에서는 한 시간 동안 조직 및 환경의 트래픽이 50% 증가할 때 트리거되는 알림을 설정하는 방법을 보여줍니다. 경고가 트리거되면 지정된 PagerDuty 코드로 알림이 전송됩니다.
curl 'https://apimonitoring.enterprise.apigee.com/alerts' \
  -X POST \
  -H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -d '{
     "organization":"myorg",
     "name":"My Traffic Alert",
     "description":"My traffic alert",
     "environment":"prod",
     "enabled":true,
     "alertType":"runtime",
     "alertSubType":"trafficfixed",
     "conditions":[
     {
        "description":"",
        "dimensions": {
            "org":"nyorg",
            "env":"prod",
            "proxy":"ALL",
            "region":"ALL",
            "traffic":"total"
        },
        "metric": "trafficChange",
        "threshold": 0.5,
        "durationSeconds": 3600,
        "comparator": "increasedBy"
     }
     ],
     "notifications":[{ "channel":"pagerduty", "destination":"abcd1234efgh56789"}],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
}'

OAuth 2.0 액세스 토큰 가져오기에 설명된 대로 $ACCESS_TOKEN을 OAuth 2.0 액세스 토큰으로 설정합니다. 이 예에서 사용된 cURL 옵션에 대한 자세한 내용은 cURL 사용을 참조하세요.

이 API 사용에 대한 자세한 내용은 이벤트 보기를 참고하세요.

교통정보 알림 받기

기본적으로 Get Alerts API는 정의된 모든 알림에 대한 정보를 반환합니다. 이제 이 API에서 쿼리 매개변수를 사용하여 결과를 필터링할 수 있습니다.

  • enabled - true가 사용 설정된 알림만 반환하도록 지정하는 경우입니다. 기본값은 false입니다.
  • alertType - 반환할 알림 유형을 지정합니다. 허용되는 값은 기본값인 runtimecert입니다.
  • alertSubType - 반환할 알림 하위유형을 지정합니다. 기본값이 설정되어 있지 않습니다. 즉, 모든 알림 하위유형이 반환됩니다.

예를 들어 다음 API 호출을 사용하여 myorg라는 조직에 대한 알림만 사용 설정합니다.

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'

다음 호출은 사용 설정 및 중지된 교통정보 알림만 반환합니다.

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=runtime&alertSubType=trafficfixed'

OAuth 2.0 액세스 토큰 가져오기에 설명된 대로 $ACCESS_TOKEN을 OAuth 2.0 액세스 토큰으로 설정합니다. 이 예에서 사용된 cURL 옵션에 대한 자세한 내용은 cURL 사용을 참조하세요.