Thiết lập cảnh báo giao thông

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về Apigee X.
thông tin

Sử dụng cảnh báo về lưu lượng truy cập để đưa ra thông báo khi lưu lượng truy cập của một môi trường, proxy hoặc khu vực thay đổi theo tỷ lệ phần trăm đã chỉ định trong một khoảng thời gian.

Bạn đặt phạm vi thời gian thành:

  • 1 giờ
  • 1 ngày
  • 7 ngày
  • 15 ngày (chỉ API)
  • 30 ngày (chỉ API)

Cảnh báo này hoạt động bằng cách so sánh lưu lượng truy cập trong phạm vi thời gian hiện tại với lưu lượng truy cập trong phạm vi thời gian trước đó. Ví dụ: bạn chỉ định phạm vi thời gian một giờ. Sau đó, cảnh báo này sẽ so sánh lưu lượng truy cập trong giờ gần đây nhất với lưu lượng truy cập trong giờ trước đó để tính toán phần trăm thay đổi về lưu lượng truy cập:

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

Giá trị dương có nghĩa là lưu lượng truy cập tăng, còn giá trị âm có nghĩa là lưu lượng truy cập đã giảm.

Sau đó, bạn đặt ngưỡng kích hoạt cảnh báo lưu lượng truy cập dưới dạng phần trăm tăng hoặc giảm về lưu lượng truy cập API trong khoảng thời gian đã chỉ định.

Trước khi bạn đặt tỷ lệ phần trăm đó, hãy đảm bảo rằng tỷ lệ này phù hợp với mẫu lưu lượng truy cập thông thường của bạn. Ví dụ: nếu lưu lượng truy cập API của bạn thường dao động trong ngày với mức tăng đột biến lưu lượng truy cập hằng giờ lên tới 100% vào một số thời điểm cao điểm nhất định, thì những mức tăng đột biến này là bình thường và không kích hoạt cảnh báo. Tuy nhiên, nếu sau đó bạn định cấu hình một cảnh báo để kích hoạt lưu lượng truy cập hằng giờ tăng thêm 50%, bạn sẽ nhận được các cảnh báo không cần thiết cho lưu lượng truy cập thông thường của mình.

Để biết thêm thông tin về cảnh báo, hãy xem bài viết Thiết lập cảnh báo và thông báo.

Thêm cảnh báo và thông báo về tình hình giao thông

Cách thêm cảnh báo và thông báo về tình hình giao thông:
  1. Nhấp vào Analyze > Alert Rules (Phân tích > Quy tắc cảnh báo) trong giao diện người dùng Edge.
  2. Nhấp vào +Cảnh báo.
  3. Nhập thông tin chung sau đây về cảnh báo:
    Trường Nội dung mô tả
    Tên thông báo Tên của cảnh báo. Sử dụng tên mô tả điều kiện kích hoạt và tên đó có ý nghĩa với bạn. Tên không được vượt quá 128 ký tự.
    Nội dung mô tả Nội dung mô tả về cảnh báo.
    Loại Cảnh báo Chọn Tổng lưu lượng truy cập. Hãy xem bài viết Giới thiệu về các loại thông báo để biết thêm thông tin.
    Môi trường Chọn môi trường trong danh sách thả xuống.
    Trạng thái Gạt nút để bật hoặc tắt cảnh báo.
  4. Xác định ngưỡng và phương diện cho điều kiện sẽ kích hoạt cảnh báo.
    Trường điều kiện Nội dung mô tả
    Ngưỡng

    Chỉ định đưa ra cảnh báo khi lưu lượng truy cập tăng hoặc giảm một tỷ lệ phần trăm cụ thể khi so sánh với một khoảng thời gian trước đó.

    Đặt tỷ lệ phần trăm tăng thêm đến một giá trị lớn hơn hoặc bằng 0%. Đặt tỷ lệ phần trăm giảm xuống thành một giá trị lớn hơn hoặc bằng 0% và nhỏ hơn hoặc bằng 100%.

    Bạn có thể chọn khoảng thời gian là:

    • 1 giờ
    • 1 ngày
    • Sau 1 tuần
    Phương diện

    Nhấp vào +Thêm phương diện rồi chỉ định thông tin chi tiết về phương diện cần trả về kết quả, bao gồm cả proxy API và khu vực.

    Đặt một phương diện cụ thể thành:

    • Proxy – Đặt thành một proxy cụ thể hoặc Tất cả proxy. Proxy không hỗ trợ giá trị "Any". Thay vào đó, bạn có thể thêm một cảnh báo riêng cho từng proxy mà mình quan tâm.
    • Khu vực – Đặt thành một khu vực cụ thể hoặc Tất cả khu vực. Khu vực không hỗ trợ giá trị "Bất kỳ". Thay vào đó, bạn có thể thêm một cảnh báo riêng cho từng khu vực mà mình quan tâm.
  5. Nhấp vào + Thông báo để thêm thông báo.
    Thông tin chi tiết về thông báo Nội dung mô tả
    Kênh Chọn kênh thông báo bạn muốn sử dụng và chỉ định đích đến: Email, Slack, PagerDuty hoặc Webhook.
    Đích đến Chỉ định đích đến dựa trên loại kênh đã chọn:
    • Email – Địa chỉ email, chẳng hạn như joe@company.com
    • Slack – URL của kênh Slack, chẳng hạn như https://hooks.slack.com/services/T00000000/B00000000/XXXXX
    • PagerDuty – mã PagerDuty, chẳng hạn như abcd1234efgh56789
    • Webhook – URL webhook, chẳng hạn như https://apigee.com/test-webhook

      Lưu ý: Bạn chỉ có thể chỉ định một đích đến cho mỗi thông báo. Để chỉ định nhiều đích đến cho cùng một loại kênh, hãy thêm thông báo bổ sung.

  6. Để thêm thông báo khác, hãy lặp lại bước trước đó.
  7. Nếu bạn đã thêm một thông báo, hãy thiết lập các trường sau:
    Trường Nội dung mô tả
    Cẩm nang (Không bắt buộc) Trường văn bản dạng tự do cung cấp nội dung mô tả ngắn về các hành động được đề xuất để giải quyết các cảnh báo khi cảnh báo kích hoạt. Bạn cũng có thể chỉ định một đường liên kết đến trang wiki nội bộ hoặc trang cộng đồng nơi bạn tham khảo các phương pháp hay nhất. Thông tin trong trường này sẽ được đưa vào thông báo. Nội dung trong trường này không được vượt quá 1500 ký tự.
    Van tiết lưu Tần suất gửi thông báo. Chọn một giá trị trong danh sách thả xuống.
  8. Nhấp vào Lưu.

Xem cảnh báo trong trang tổng quan Sự kiện

Khi phát hiện thấy một điều kiện cảnh báo, Edge sẽ tự động ghi lại điều kiện đó vào trang tổng quan Sự kiện trong giao diện người dùng Edge. Danh sách các sự kiện hiển thị trong trang tổng quan Sự kiện bao gồm tất cả cảnh báo, cả cảnh báo cố định và chứng chỉ.

Cách xem cảnh báo:

  1. Nhấp vào Phân tích > Sự kiện trong giao diện người dùng Edge. Trang tổng quan Sự kiện mới sẽ xuất hiện:

  2. Lọc trang tổng quan về Sự kiện theo:

    • Môi trường
    • Vùng
    • Khoảng thời gian
  3. Chọn một hàng trong Trang tổng quan về sự kiện để hiển thị Kho khoá chứa chứng chỉ sắp hết hạn nhằm tìm hiểu thêm về cảnh báo. Từ trang Kho khoá, bạn có thể tải một chứng chỉ mới lên và xoá chứng chỉ sắp hết hạn.

Sử dụng API cảnh báo với cảnh báo giao thông

Hầu hết các API mà bạn sử dụng để tạo và quản lý cảnh báo về lưu lượng truy cập đều giống như các API mà bạn sử dụng với các loại cảnh báo khác:

Tuy nhiên, một số API có các thuộc tính bổ sung được dùng để hỗ trợ cảnh báo về hoạt động bất thường, bao gồm:

  • Nhận cảnh báo – Liệt kê tất cả cảnh báo, bao gồm cảnh báo đã khắc phục và cảnh báo bất thường.
  • Tạo cảnh báo – Tạo cảnh báo cố định hoặc bất thường.
  • Cập nhật cảnh báo – Cập nhật định nghĩa cảnh báo đã khắc phục hoặc cảnh báo bất thường.

Tạo hoặc cập nhật cảnh báo giao thông

Sử dụng chính các API để tạo hoặc cập nhật cảnh báo về lưu lượng truy cập như bạn đang làm cho các loại cảnh báo khác. Nội dung của lệnh gọi API để tạo hoặc cập nhật cảnh báo về lưu lượng truy cập cũng giống như nội dung được sử dụng cho các cảnh báo khác, với các thay đổi sau:

  • Hãy thêm các thuộc tính mới sau đây để chỉ định rằng cảnh báo đó là cảnh báo về lưu lượng truy cập:

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

    Giá trị mặc định của các thuộc tính này là:

    "alertType": "runtime"
    "alertSubType": "fixed"
  • Trong phần tử dimensions của mảng conditions:
    • Bạn phải đặt giá trị của các thuộc tính org, env, proxyregion. Chỉ những thuộc tính đó được hỗ trợ. Bạn có thể đặt proxyregion thành ALL.
    • Bạn phải đặt giá trị của thuộc tính traffic thành total.
  • Trong mảng conditions:

    • Thuộc tính metrics phải có giá trị trafficChange.
    • Thuộc tính comparator phải được đặt thành increasedBy hoặc decreasedBy.
    • Thuộc tính threshold chứa một giá trị dương chỉ định mức tăng hoặc giảm theo tỷ lệ phần trăm về lưu lượng truy cập, trong đó giá trị 1.0 tương ứng với 100%. Đối với increasedBy, giá trị phải lớn hơn hoặc bằng 0 (0%). Đối với decreasedBy, giá trị phải lớn hơn hoặc bằng 0 (0%) và nhỏ hơn hoặc bằng 1 (100%).
    • Bạn phải đặt thuộc tính durationSeconds thành một trong các giá trị sau: 3600 (1 giờ), 86400 (1 ngày), 604800 (7 ngày), 1296000 (15 ngày), 2592000 (30 ngày) .
  • Hệ thống không hỗ trợ tính năng cảnh báo về giao thông cho thuộc tính reportEnabled.
Ví dụ sau cho thấy cách thiết lập một cảnh báo được kích hoạt khi lưu lượng truy cập của tổ chức và môi trường tăng 50% trong khoảng thời gian một giờ. Một thông báo sẽ được gửi đến mã PagerDuty đượ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":"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
}'

Đặt $ACCESS_TOKEN thành mã truy cập OAuth 2.0, như mô tả trong bài viết Lấy mã truy cập OAuth 2.0. Để biết thông tin về các tuỳ chọn cURL dùng trong ví dụ này, hãy xem phần Sử dụng cURL.

Hãy xem bài viết Xem sự kiện để biết thêm thông tin về cách sử dụng API này.

Nhận cảnh báo giao thông

Theo mặc định, API Nhận cảnh báo sẽ trả về thông tin về tất cả cảnh báo đã xác định. API này hiện lấy các tham số truy vấn để cho phép bạn lọc kết quả:

  • enabled – Nếu true chỉ định để chỉ trả về các cảnh báo đã bật. Giá trị mặc định là false.
  • alertType – Chỉ định loại cảnh báo cần trả về. Các giá trị được phép là runtime, giá trị mặc định và cert.
  • alertSubType – Chỉ định loại cảnh báo phụ cần trả về. Giá trị mặc định chưa được đặt, nghĩa là trả về tất cả các loại cảnh báo phụ.

Ví dụ: sử dụng lệnh gọi API sau đây để trả về chỉ bật các cảnh báo cho tổ chức có tên myorg:

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

Lệnh gọi sau đây chỉ trả về các cảnh báo lưu lượng truy cập, cả cảnh báo được bật và tắt:

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

Đặ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 tuỳ chọn cURL dùng trong ví dụ này, hãy xem phần Sử dụng cURL.