ניהול התראות והודעות באמצעות ממשק ה-API

אתם צופים במסמכי העזרה של Apigee Edge.
כניסה למסמכי העזרה של Apigee X.
info

בקטעים הבאים מוסבר איך לנהל התראות באמצעות ה-API.

מידע נוסף על alerts API זמין ב-Alerts API.

הגדרת התראות באמצעות ה-API

כדי להגדיר התראות והתראות, שולחים בקשת POST למשאב הבא: https://apimonitoring.enterprise.apigee.com/alerts.

בקטעים הבאים מפורטות דוגמאות להגדרת התראות והתראות באמצעות ה-API:

הגדרת התראה על קוד סטטוס 5xx לשרת proxy של API באמצעות ה-API

בדוגמה הבאה מוסבר איך להגדיר התראה שתופעל כשקודי סטטוס 5xx מתרחשים בקצב של יותר מ-100 עסקאות לשנייה (TPS) במשך 10 דקות בשרת proxy של API למלונות בסביבת הייצור בכל אזור. כשההתראה מופעלת, נשלחת התראה לכתובת האימייל שצוינה.

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":"5xx Alert",
     "description":"My 5xx alert",
     "environment":"prod",
     "enabled":true,
     "conditions":[
     {
        "description":"",
        "dimensions":{
            "org":"myorg", 
            "env":"prod", 
            "proxy":"hotels",
            "region":"ANY",
            "statusCode":"5xx"
        },
        "metric":"tps",
        "threshold":100,
        "durationSeconds":600,
        "comparator":">"
     }
     ],
     "notifications":[{ 
         "channel":"email", 
         "destination":"ops@acme.com"
     }],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
    }'

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הגדרת התראה על זמן אחזור של 95% לשרתי proxy ל-API באמצעות ה-API

בדוגמה הבאה אפשר לראות איך מגדירים התראה שמופעלת אם זמן האחזור הכולל של התגובה באחוזון ה-95 גדול מ-100 אלפיות השנייה למשך 5 דקות בשביל שרת ה-proxy של Hotel API בסביבת prod.

במקרה שההתראה מופעלת, נשלחת התראה ל-webhook שצוין.

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 Alert",
     "description":"My first alert",
     "environment":"prod",
     "enabled":true,
     "conditions":[
     {
        "description":"",
        "dimensions":{
            "org":"myorg", 
            "env":"prod",
            "proxy" : "hotels",
            "region":"ANY",
            "percentile":"95"
        },
        "metric":"totalLatency",
        "threshold":100,
        "durationSeconds":300,
        "comparator":">"
     }
     ],
     "notifications":[{ "channel":"webhook", "destination":"https://apigee.com/test-webhook"}],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
}'

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר איך מקבלים אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הגדרה של התראת קוד סטטוס 404 (האפליקציה לא נמצאה) לכל שרתי ה-proxy ל-API שמשתמשים ב-API

בדוגמה הבאה מוסבר איך להגדיר התראה שתופעל כשקודי סטטוס HTTP 404 מתרחשים בשיעור גבוה מ-10% במשך 5 דקות בכל שרת ה-proxy של ה-API בסביבת הייצור בכל אזור.

כשהתראה מופעלת, נשלחת התראה לערוץ Slack שציינתם.

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":"404 Application Not Found Alert",
     "description":"My 404 alert",
     "environment":"prod",
     "enabled":true,
     "conditions":[
     {
        "description":"",
        "dimensions":{"org":"myorg", 
            "env":"prod", 
            "proxy":"ALL",
            "region":"ANY",
            "statusCode":"404"},
        "metric":"rate",
        "threshold":0.05,
        "durationSeconds":300,
        "comparator":">"
     }],
     "notifications":[{ "channel":"slack", "destination":"https://hooks.slack.com/services/T00000000/B00000000/XXXXX"}],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
}'

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הגדרת התראת ספירה של שרת proxy ל-API לממשקי API באמצעות ה-API

בדוגמה הבאה אפשר לראות איך מגדירים התראה שמופעלת כשמספר הקוד של 5xx לממשקי API חורג מ-200 למשך 5 דקות באזור כלשהו.

בדוגמה הזו, ממשקי ה-API מתועדים באוסף Critical API Proxies (עם UUID aeff4394-86b7-11e8-83d7-42010a840040). במאמר הצגת כל האוספים באמצעות ה-API מוסבר איך לקבל את מזהה ה-UUID של אוסף.

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":"Proxy Count Alert",
     "description":"My proxy count alert",
     "environment":"prod",
     "enabled":true,
     "conditions":[
     {
        "description":"",
        "dimensions":{
            "collection":"aeff4394-86b7-11e8-83d7-42010a840040",
            "org":"myorg", 
            "env":"prod",
            "proxy" : "ANY",
            "region":"ANY",
            "statusCode":"5xx"
        },
        "metric":"count",
        "threshold":200,
        "durationSeconds":300,
        "comparator":">"
     }
     ],
     "notifications":[{ 
         "channel":"email", 
         "destination":"ops@acme.com"
     }],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
    }'

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר איך מקבלים אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הגדרת התראת שיעור שגיאות לשירותי יעד באמצעות ה-API

בדוגמה הבאה אפשר לראות איך מגדירים התראה שמופעלת כששיעור 500 הקודים לשירותי יעד גבוה מ-10% למשך שעה בכל אזור.

בדוגמה הזו, שירותי היעד מתועדים באוסף Critical targets (עם UUID aeff4394-86b7-11e8-83d7-42010a840040). במאמר הצגת כל האוספים באמצעות ה-API מוסבר איך לקבל את מזהה ה-UUID של אוסף.

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":"Error rate Alert",
     "description":"My error rate alert",
     "environment":"prod",
     "enabled":true,
     "conditions":[
     {
        "description":"",
        "dimensions":{
            "collection":"aeff4394-86b7-11e8-83d7-42010a840040",
            "org":"myorg", 
            "env":"prod",
            "proxy" : "ANY",
            "region":"ANY",
            "statusCode":"500"
        },
        "metric":"rate",
        "threshold":0.1,
        "durationSeconds":3600,
        "comparator":">"
     }
     ],
     "notifications":[{ 
         "channel":"email", 
         "destination":"ops@acme.com"
     }],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
    }'

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הגדרה של התראת שיעור שגיאות לגבי המדיניות בנושא יתרונות מרכזיים של שירות באמצעות ה-API

בדוגמה הבאה תוכלו לראות איך מגדירים התראה שמופעלת כששיעור 500 הקודים לשירות שצוין במדיניות ServiceCallout גבוה מ-10% למשך שעה בכל אזור.

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":"Error rate Alert",
     "description":"My error rate alert",
     "environment":"prod",
     "enabled":true,
     "conditions":[
     {
        "description":"",
        "dimensions":{
            "target": "sc://docstore-api",
            "org":"myorg", 
            "env":"prod",
            "proxy" : "ANY",
            "region":"ANY",
            "statusCode":"500"
        },
        "metric":"rate",
        "threshold":0.1,
        "durationSeconds":3600,
        "comparator":">"
     }
     ],
     "notifications":[{ 
         "channel":"email", 
         "destination":"ops@acme.com"
     }],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
    }'

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שנעשה בהן שימוש בדוגמה הזו זמין במאמר בנושא שימוש ב-cURL.

הגדרת התראות על קוד שגיאה במדיניות באמצעות ה-API

הדוגמה הבאה מראה איך להגדיר התראה שתופעל אם אחד מהתנאים הבאים מתקיים:

  • מספר קודי השגיאה של SpikeArrestViolation גדול מ-10 למשך 5 דקות בממשקי API בסביבת prod בכל אזור.
  • המספר של כל קודי השגיאה של פרוטוקול ה-API גבוה מ-3% במשך 5 דקות בממשקי API בסביבת הייצור בכל אזור.

בדוגמה הזו, ממשקי ה-API מתועדים באוסף Critical API Proxies (עם UUID aeff4394-86b7-11e8-83d7-42010a840040). במאמר הצגת כל האוספים באמצעות ה-API מוסבר איך לקבל את מזהה ה-UUID של אוסף.

כשהתראה מופעלת, נשלחת התראה לקוד 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 Fault Code Alert",
     "description":"My fault code alert",
     "environment":"prod",
     "enabled":true,
     "conditions":[
     {
        "description":"",
        "dimensions": { 
            "collection":"aeff4394-86b7-11e8-83d7-42010a840040",
            "org":"myorg",
            "env":"prod",
            "proxy":"ANY",
            "region":"ANY",
            "faultCodeCategory":"Traffic Mgmt Policy",
            "faultCodeSubCategory":"Spike Arrest",
            "faultCodeName":"SpikeArrest Violation"
        },
        "metric":"count,
        "threshold":10,
        "durationSeconds":300,
        "comparator":">"
     },
     {
       "description":"",
       "dimensions": { 
           "collection":"aeff4394-86b7-11e8-83d7-42010a840040",
           "org":"myorg",
           "env":"prod",
           "proxy":"ANY",
           "region":"ANY",
           "faultCodeCategory":"API Protocol",
           "faultCodeSubCategory":"ALL"
       },
       "metric":"rate",
       "threshold":0.03,
       "durationSeconds":300,
       "comparator":">"
     }   
     ],
     "notifications":[{ "channel":"pagerduty", "destination":"abcd1234efgh56789"}],
     "playbook":"http://acme.com/myplaybook.html",
     "throttleIntervalSeconds":3600,
     "reportEnabled":true
}'

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הצגת התראות

בקטעים הבאים תוכלו לראות דוגמאות לצפייה בהגדרות של התראות ומידע על התראות שמופעלות באמצעות ה-API:

הצגת כל הגדרות ההתראות עבור ארגון

אפשר לראות את כל ההגדרות של ההתראות וההתראות על-ידי שליחת בקשת GET ל-API הבא: https://apimonitoring.enterprise.apigee.com/alerts.

צריך להעביר את שם הארגון באמצעות פרמטר השאילתה org.

לדוגמה:

curl 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg'
    -X GET
    -H 'Accept: application/json, text/plain, */*'
    -H "Authorization: Bearer $ACCESS_TOKEN"    

מזהה ה-UUID של ההתראה מופיע בשדה uuid בתשובה. צריך את ה-UUID הזה כדי לבצע קריאות כדי לקבוע מידע ספציפי להגדרת התראה. דוגמה לתגובה:

[ 
 {
    "uuid": "4fa49a87-3463023ea7c4",
    "name": "PublicAPI latency alert",
    "enabled": true,
    "description": "Public API Latency alerts, 90th %ile > 6secs for 5 minute window trigger this alert",
    "conditions": [
      {
        "uuid": "4fa49a87-3463023ea7c4",
        "description": "",
        "dimensions": {
          "env": "prod",
          "org": "myorg",
          "percentile": "90",
          "proxy": "PublicAPI",
          "region": "ANY"
        },
        "metric": "totalLatency",
        "threshold": 6000,
        "durationSeconds": 300,
        "comparator": ">",
        "updatedBy": "me@foo.com"
      }
    ],
    "playbook": "PublicAPI Latency alert, setup to go off when 90th %ile is > 4 secs for 5 minute window",
    "throttleIntervalSeconds": 3600,
    "self": "/alerts/4fa49a87-3463023ea7c4",
    "feed": "/o/myorg/events/4fa49a87-3463023ea7c4",
    "organization": "myorg",
    "environment": "prod",
    "notifications": [
      {
        "channel": "email",
        "destination": "me@foo.com"
      }
    ],
    "updatedAt": "2018-07-19T18:19:31.654738Z",
    "updatedBy": "me@foo.com"
  },
  {
    "uuid": "ef1a5249-345ed3023ea7c4",
    "name": "Minty API Latency alert",
    "enabled": true,
    "description": "Minty API Latency alerts, 90th %ile > 6secs for 5 minute window trigger this alert",
    "conditions": [
      {
        "uuid": "ef1a5249-345ed3023ea7c4",
        "description": "",
        "dimensions": {
          "env": "prod",
          "org": "myorg",
          "percentile": "90",
          "proxy": "minty",
          "region": "ANY"
        },
        "metric": "totalLatency",
        "threshold": 6000,
        "durationSeconds": 300,
        "comparator": ">",
        "updatedBy": "me@foo.com"
      }
    ],
    "playbook": "Minty API",
    "throttleIntervalSeconds": 3600,
    "self": "/alerts/ef1a5249-345ed3023ea7c4",
    "feed": "/o/myorg/events/ef1a5249-345ed3023ea7c4",
    "organization": "myorg",
    "environment": "prod",
    "notifications": [
      {
        "channel": "email",
        "destination": "me@foo.com"
      }
    ],
    "updatedAt": "2018-07-19T18:19:33.22479Z",
    "updatedBy": "me@foo.com"
  },
 ...
]

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הצגת הגדרה של התראת מפרט

כדי להציג הגדרת התראה ספציפית, שולחים בקשת GET למשאב הבא: https://apimonitoring.enterprise.apigee.com/alerts/alert_uuid כאשר alert_uuid מציין את מזהה ה-UUID של הגדרת ההתראה. אפשר לקבל את ה-UUID כשיוצרים את ההתראה, או להשתמש בקריאת ה-API שמוצגת בקטע הקודם כדי לקבל רשימה של כל ההתראות וה-UUID המשויך לכל אחת מהן.

לדוגמה:

curl 'https://apimonitoring.enterprise.apigee.com/alerts/4fa49a87-3463023ea7c4'
    -X GET
    -H 'Accept: application/json, text/plain, */*'
    -H "Authorization: Bearer $ACCESS_TOKEN"    

דוגמה לתגובה:

  {
    "uuid": "4fa49a87-3463023ea7c4",
    "name": "PublicAPI latency alert",
    "enabled": true,
    "description": "Public API Latency alerts, 90th %ile > 6secs for 5 minute window trigger this alert",
    "conditions": [
      {
        "uuid": "4fa49a87-3463023ea7c4",
        "description": "",
        "dimensions": {
          "env": "prod",
          "org": "myorg",
          "percentile": "90",
          "proxy": "PublicAPI",
          "region": "ANY"
        },
        "metric": "totalLatency",
        "threshold": 6000,
        "durationSeconds": 300,
        "comparator": ">",
        "updatedBy": "me@foo.com"
      }
    ],
    "playbook": "PublicAPI Latency alert, setup to go off when 90th %ile is > 4 secs for 5 minute window",
    "throttleIntervalSeconds": 3600,
    "self": "/alerts/4fa49a87-3463023ea7c4",
    "feed": "/o/myorg/events/4fa49a87-3463023ea7c4",
    "organization": "myorg",
    "environment": "prod",
    "notifications": [
      {
        "channel": "email",
        "destination": "me@foo.com"
      }
    ],
    "updatedAt": "2018-07-19T18:19:31.654738Z",
    "updatedBy": "me@foo.com"
  }

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.

הצגת ההיסטוריה של כל ההתראות שהופעלו בארגון

ניתן לראות את ההיסטוריה של כל ההתראות שהופעלו בארגון על ידי שליחת בקשת GET למשאב הבא: https://apimonitoring.enterprise.apigee.com/metrics/alerthistory.

צריך להעביר את שם הארגון באמצעות פרמטר השאילתה org. אפשר לציין תקופת זמן לצורך חיפוש התראות שהופעלו. ברירת המחדל היא להציג את כל ההתראות שהופעלו במהלך השעה האחרונה.

לדוגמה:

curl 'https://apimonitoring.enterprise.apigee.com/metrics/alerthistory?org=myorg'
    -X GET
    -H 'Accept: application/json, text/plain, */*'
    -H "Authorization: Bearer $ACCESS_TOKEN"    

התשובה מכילה מערך של כל ההתראות שהופעלו במהלך פרק הזמן המבוקש. בגוף התגובה, השדה id מציין את ה-UUID של ההתראה שהופעל, והשדה shared_id מציין את ה-UUID של הגדרת ההתראה שמשויכת להתראה שהופעל.

הדוגמה הבאה ממחישה את התשובה.

[
  {
    "id": "80cbe560-f6e0-475c6f7ed2d",
    "shared_id": "4fa49a87-3463023ea7c4",
    "organization": "myorg",
    "environment": "prod",
    "name": "PublicAPI latency alert",
    "type": "Alert",
    "source": "null/current",
    "raw_payload": "{\"reportUUID\":\"\",\"reportEnabled\":false,\"organization\":\"myorg\",\"name\":\"emgmt-api 404\",\"self\":\"/alerts/4fa49a87-3463023ea7c4\",\"description\":\"go/apigee-extensions-playbook\",\"conditions\":[
  {\"comparator\":\">\",\"metric\":\"rate\",\"durationSeconds\":300,\"name\":\"PublicAPI latency alert\",\"description\":\"\",\"threshold\":0.05,\"dimensions\":{\"proxy\":\"emgmt-api\",\"org\":\"myorg\",\"env\":\"prod\",\"region\":\"any\",\"statusCode\":\"404\"}}],\"uuid\":\"4fa49a87-3463023ea7c4\",\"playbook\":\"go/apigee-extensions-playbook\"}",
    "time": "2019-03-25T15:30:18Z"
  },
  {
    "id": "8131d740-6680-45b9c72c3",
    "shared_id": "1a64885b-f9-42010a850039",
    "organization": "apigee-pinpoint",
    "environment": "prod",
    "name": "Demo 5xx alert",
    "type": "Alert",
    "source": "null/current",
    "raw_payload": "{\"reportUUID\":\"\",\"reportEnabled\":false,\"organization\":\"myorg\",\"name\":\"Demo 5xx alert\",\"self\":\"/alerts/1a64885b-f9-42010a850039\",\"description\":\"Demo 5xx alert\",\"conditions\":[
  {\"comparator\":\">\",\"metric\":\"rate\",\"durationSeconds\":300,\"name\":\"Demo 5xx alert\",\"description\":\"\",\"threshold\":0.4,\"dimensions\":{\"proxy\":\"ALL\",\"org\":\"myorg\",\"env\":\"prod\",\"region\":\"any\",\"statusCode\":\"5xx\"}}],\"uuid\":\"1a64885b-f9-42010a850039\",\"playbook\":\"Recommended Playbook\"}",
    "time": "2019-03-25T15:57:30Z"
  },
 ...
]

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שנעשה בהן שימוש בדוגמה הזו זמין במאמר בנושא שימוש ב-cURL.

הצגת ההיסטוריה של התראה ספציפית

אפשר להציג את היסטוריית ההתראות שהופעלו לפי הגדרת התראה ספציפית, על ידי שליחת בקשת GET למשאב הבא: https://apimonitoring.enterprise.apigee.com/metrics/alerthistory.

אתם צריכים להעביר את שם הארגון באמצעות פרמטר השאילתה org וה-UUID של הגדרת ההתראה. אפשר גם לציין תקופת זמן שבה יתבצע החיפוש של ההתראות. ברירת המחדל היא להציג את כל ההתראות שהופעלו במהלך השעה האחרונה.

אפשר לקבל את מזהה ה-UUID של הגדרת ההתראה מהיסטוריית ההתראות, כפי שמתואר בקטע הקודם, כשיוצרים את הגדרת ההתראה, או באמצעות קריאת ה-API שמופיעה בקטע הצגת כל הגדרות ההתראות.

לדוגמה:

curl 'https://apimonitoring.enterprise.apigee.com/metrics/alerthistory?org=myorg&alertId=4fa49a87-3463023ea7c4'
    -X GET
    -H 'Accept: application/json, text/plain, */*'
    -H "Authorization: Bearer $ACCESS_TOKEN"    

התשובה תכיל מערך של כל ההתראות שהופעלו במהלך תקופת הזמן המבוקשת ל-UUID של הגדרת ההתראה שצוינה. בגוף התשובה, השדה id מציין את ה-UUID של ההתראה שהופעל, והשדה shared_id מציין את ה-UUID של הגדרת ההתראה שמשויכת להתראה שהופעל.

בהמשך מופיעה דוגמה לתגובה.

[
  {
    "id": "80cbe560-f6e0-475c6f7ed2d",
    "shared_id": "4fa49a87-3463023ea7c4",
    "organization": "myorg",
    "environment": "prod",
    "name": "PublicAPI latency alert",
    "type": "Alert",
    "source": "null/current",
    "raw_payload": "{\"reportUUID\":\"\",\"reportEnabled\":false,\"organization\":\"myorg\",\"name\":\"emgmt-api 404\",\"self\":\"/alerts/4fa49a87-3463023ea7c4\",\"description\":\"go/apigee-extensions-playbook\",\"conditions\":[
  {\"comparator\":\">\",\"metric\":\"rate\",\"durationSeconds\":300,\"name\":\"PublicAPI latency alert\",\"description\":\"\",\"threshold\":0.05,\"dimensions\":{\"proxy\":\"emgmt-api\",\"org\":\"myorg\",\"env\":\"prod\",\"region\":\"any\",\"statusCode\":\"404\"}}],\"uuid\":\"4fa49a87-3463023ea7c4\",\"playbook\":\"go/apigee-extensions-playbook\"}",
    "time": "2019-03-25T15:30:18Z"
  },
  {
    "id": "9fc442d5-d607-40ef118c4e7",
    "shared_id": "4fa49a87-3463023ea7c4",
    "organization": "myorg",
    "environment": "prod",
    "name": "PublicAPI latency alert",
    "type": "Alert",
    "source": "null/current",
    "raw_payload": "{\"reportUUID\":\"\",\"reportEnabled\":false,\"organization\":\"myorg\",\"name\":\"emgmt-api 404\",\"self\":\"/alerts/4fa49a87-3463023ea7c4\",\"description\":\"go/apigee-extensions-playbook\",\"conditions\":[{\"comparator\":\">\",\"metric\":\"rate\",\"durationSeconds\":300,\"name\":\"PublicAPI latency alert\",\"description\":\"\",\"threshold\":0.05,\"dimensions\":{\"proxy\":\"emgmt-api\",\"org\":\"myorg\",\"env\":\"prod\",\"region\":\"any\",\"statusCode\":\"404\"}}],\"uuid\":\"4fa49a87-3463023ea7c4\",\"playbook\":\"go/apigee-extensions-playbook\"}",
    "time": "2019-03-25T15:17:55Z"
  },
 ...
]

מגדירים את $ACCESS_TOKEN לאסימון הגישה מסוג OAuth 2.0, כפי שמתואר במאמר קבלת אסימון גישה מסוג OAuth 2.0.

מידע על אפשרויות ה-cURL שבהן נעשה שימוש בדוגמה הזו זמין במאמר שימוש ב-cURL.