Quản lý cảnh báo và thông báo bằng API

Bạn đang xem tài liệu về Apigee Edge.
Truy cập vào tài liệu Apigee X.
thông tin

Các phần sau đây mô tả cách quản lý cảnh báo bằng API.

Hãy xem API Cảnh báo để biết thêm thông tin về API cảnh báo.

Thiết lập cảnh báo và thông báo bằng API

Thiết lập cảnh báo và thông báo bằng cách gửi yêu cầu POST đến tài nguyên sau: https://apimonitoring.enterprise.apigee.com/alerts.

Các phần sau đây đưa ra ví dụ về cách thiết lập cảnh báo và thông báo bằng API:

Thiết lập cảnh báo mã trạng thái 5xx cho một proxy API bằng API

Ví dụ sau đây minh hoạ cách thiết lập một cảnh báo được kích hoạt khi mã trạng thái 5xx xuất hiện với tốc độ lớn hơn 100 giao dịch mỗi giây (TPS) trong 10 phút cho proxy API khách sạn trong môi trường prod cho bất kỳ khu vực nào. Thông báo sẽ được gửi đến địa chỉ email đã chỉ định khi cảnh báo được kích hoạt.

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
    }'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Thiết lập cảnh báo độ trễ ở phân vị thứ 95 cho một proxy API bằng API

Ví dụ sau đây cho thấy cách thiết lập một cảnh báo sẽ được kích hoạt nếu tổng độ trễ phản hồi cho phân vị thứ 95 lớn hơn 100 mili giây trong 5 phút đối với proxy API khách sạn trong môi trường prod cho bất kỳ khu vực nào.

Thông báo sẽ được gửi đến Webhook đã chỉ định trong trường hợp cảnh báo được kích hoạt.

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
}'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Thiết lập cảnh báo mã trạng thái 404 (Không tìm thấy ứng dụng) cho tất cả các proxy API bằng API

Ví dụ sau đây cho thấy cách thiết lập một cảnh báo được kích hoạt khi mã trạng thái HTTP 404 xuất hiện với tốc độ lớn hơn 10% trong 5 phút cho tất cả các proxy API trong môi trường prod cho bất kỳ khu vực nào.

Hệ thống sẽ gửi thông báo đến kênh Slack được chỉ định khi cảnh báo được kích hoạt.

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
}'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Thiết lập cảnh báo về số lượng proxy API cho các API sử dụng API

Sau đây là ví dụ về cách thiết lập một cảnh báo được kích hoạt khi số lượng mã 5xx cho các API vượt quá 200 trong 5 phút cho bất kỳ khu vực nào.

Trong ví dụ này, các API được ghi lại trong tập hợp Critical API Proxies (Uỷ quyền API quan trọng) (với UUID aeff4394-86b7-11e8-83d7-42010a840040). Để lấy UUID cho một bộ sưu tập, hãy xem phần Xem tất cả bộ sưu tập bằng 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":"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
    }'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Thiết lập cảnh báo tỷ lệ lỗi cho các dịch vụ mục tiêu bằng API

Sau đây là ví dụ về cách thiết lập một cảnh báo được kích hoạt khi tỷ lệ mã 500 cho các dịch vụ mục tiêu vượt quá 10% trong 1 giờ cho bất kỳ khu vực nào.

Trong ví dụ này, các dịch vụ mục tiêu được ghi lại trong tập hợp Mục tiêu quan trọng (có UUID là aeff4394-86b7-11e8-83d7-42010a840040). Để lấy UUID cho một bộ sưu tập, hãy xem phần Xem tất cả bộ sưu tập bằng 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":"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
    }'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Thiết lập cảnh báo tỷ lệ lỗi cho chính sách Lệnh gọi dịch vụ bằng API

Sau đây là ví dụ về cách thiết lập một cảnh báo được kích hoạt khi tốc độ mã 500 cho dịch vụ do chính sách ServiceCallout chỉ định vượt quá 10% trong 1 giờ cho bất kỳ khu vực nào.

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
    }'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Thiết lập cảnh báo mã lỗi chính sách bằng API

Ví dụ sau đây cho thấy cách thiết lập một cảnh báo được kích hoạt khi một trong các điều kiện sau đây được đáp ứng:

  • Số lượng mã lỗi SpikeArrestViolation lớn hơn 10 trong 5 phút đối với các API trong môi trường sản xuất cho bất kỳ khu vực nào.
  • Số lượng mã lỗi giao thức API cho tất cả các API trong môi trường phát hành chính lớn hơn 3% trong 5 phút đối với mọi khu vực.

Trong ví dụ này, các API được ghi lại trong tập hợp Critical API Proxies (Uỷ quyền API quan trọng) (với UUID aeff4394-86b7-11e8-83d7-42010a840040). Để lấy UUID cho một bộ sưu tập, hãy xem phần Xem tất cả bộ sưu tập bằng API.

Thông báo sẽ được gửi đến mã PagerDuty đã chỉ định khi cảnh báo được kích hoạt.

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
}'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Xem cảnh báo và thông báo

Các phần sau đây cung cấp ví dụ về cách xem định nghĩa cảnh báo và thông tin về các cảnh báo đã kích hoạt bằng cách sử dụng API:

Xem tất cả định nghĩa cảnh báo cho một tổ chức

Xem tất cả các định nghĩa về cảnh báo và thông báo bằng cách đưa ra yêu cầu GET cho API sau: https://apimonitoring.enterprise.apigee.com/alerts.

Bạn phải truyền tên của tổ chức bằng cách sử dụng tham số truy vấn org.

Ví dụ:

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

UUID của cảnh báo sẽ xuất hiện trong trường uuid của phản hồi. Bạn cần UUID này để thực hiện các lệnh gọi nhằm xác định thông tin cụ thể cho một định nghĩa cảnh báo. Sau đây là ví dụ về phản hồi:

[ 
 {
    "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"
  },
 ...
]

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Xem một định nghĩa cảnh báo cụ thể

Xem một định nghĩa cảnh báo cụ thể bằng cách đưa ra yêu cầu GET cho tài nguyên sau: https://apimonitoring.enterprise.apigee.com/alerts/alert_uuid trong đó alert_uuid chỉ định UUID của định nghĩa cảnh báo. Lấy UUID khi bạn tạo cảnh báo hoặc sử dụng lệnh gọi API xuất hiện trong phần trước để liệt kê tất cả cảnh báo và UUID được liên kết của cảnh báo.

Ví dụ:

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

Sau đây là ví dụ về phản hồi:

  {
    "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"
  }

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Xem nhật ký của tất cả các cảnh báo được kích hoạt cho một tổ chức

Xem nhật ký của tất cả các cảnh báo được kích hoạt cho một tổ chức bằng cách gửi yêu cầu GET đến tài nguyên sau: https://apimonitoring.enterprise.apigee.com/metrics/alerthistory.

Bạn phải truyền tên của tổ chức bằng cách sử dụng tham số truy vấn org. Bạn có thể chỉ định khoảng thời gian dùng để tìm kiếm các cảnh báo được kích hoạt (không bắt buộc). Theo mặc định, hệ thống sẽ trả về tất cả các cảnh báo được kích hoạt trong giờ qua.

Ví dụ:

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

Phản hồi này chứa một mảng gồm tất cả các cảnh báo được kích hoạt trong khoảng thời gian được yêu cầu. Trong phần nội dung phản hồi, trường id chỉ định UUID của cảnh báo được kích hoạt và trường shared_id chỉ định UUID của định nghĩa cảnh báo được liên kết với cảnh báo được kích hoạt.

Sau đây là ví dụ về phản hồi.

[
  {
    "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"
  },
 ...
]

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Xem nhật ký xem của một cảnh báo cụ thể

Xem nhật ký cảnh báo đã kích hoạt cho một định nghĩa cảnh báo cụ thể bằng cách đưa ra yêu cầu GET cho tài nguyên sau: https://apimonitoring.enterprise.apigee.com/metrics/alerthistory.

Bạn phải truyền tên của tổ chức bằng cách sử dụng tham số truy vấn org và UUID của định nghĩa cảnh báo. Bạn có thể chỉ định một khoảng thời gian dùng để tìm kiếm cảnh báo (không bắt buộc). Theo mặc định, hệ thống sẽ trả về tất cả các cảnh báo được kích hoạt trong giờ qua.

Bạn có thể lấy UUID của định nghĩa cảnh báo từ nhật ký cảnh báo như minh hoạ trong phần trước, khi bạn tạo định nghĩa cảnh báo hoặc bằng cách sử dụng lệnh gọi API như minh hoạ trong phần Xem tất cả định nghĩa cảnh báo.

Ví dụ:

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"    

Phản hồi chứa một mảng gồm tất cả các cảnh báo được kích hoạt trong khoảng thời gian được yêu cầu cho UUID định nghĩa cảnh báo đã chỉ định. Trong nội dung phản hồi, trường id chỉ định UUID của cảnh báo được kích hoạt và trường shared_id chỉ định UUID của định nghĩa cảnh báo được liên kết với cảnh báo được kích hoạt.

Sau đây là ví dụ về phản hồi.

[
  {
    "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"
  },
 ...
]

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong phần Lấy mã truy cập OAuth 2.0.

Để biết thông tin về các lựa chọn cURL được dùng trong ví dụ này, hãy xem phần Sử dụng cURL.