Thiết lập cảnh báo và logic thanh toán nâng cao

Mặc dù các email cảnh báo đơn giản về ngân sách là cách tương đối dễ để nhận thông tin cập nhật về thanh toán, đôi khi có thể bạn muốn tạo các cảnh báo tinh vi hơn bao gồm logic tùy chỉnh hơn. Dưới đây là hai phương pháp cần xem xét:

  • Sử dụng giải pháp Giám sát trên đám mây để tạo cảnh báo tinh vi và kịp thời hơn

  • Sử dụng thông báo Pub/Sub thanh toán cùng với thông báo Hàm Cloud giúp tạo hành vi tuỳ chỉnh nhằm phản hồi những thay đổi trong đang chi tiêu

Mặc dù cả hai kỹ thuật này đều đòi hỏi bạn phải làm nhiều việc hơn, nhưng chúng sẽ mang lại cho bạn nguồn để kiểm soát chính xác loại cảnh báo bạn đang nhận được và cách trả lời họ.

Trang này cung cấp thông tin tổng quan cho từng phương pháp tiếp cận này.

Tạo cảnh báo tinh vi hơn nhờ giải pháp Giám sát trên đám mây

Các email cảnh báo đơn giản về ngân sách cho bạn biết khi đạt đến hạn mức thanh toán tổng thể ngưỡng nhất định. Tuy nhiên, bạn cũng có thể muốn biết liệu các dịch vụ riêng lẻ đang tăng lên bất ngờ – trước khi chúng có cơ hội ảnh hưởng đáng kể đến ngân sách của bạn. Đối với các trường hợp sử dụng phức tạp hơn như thế này, bạn nên tìm hiểu về giải pháp Giám sát trên đám mây, một công cụ của Google Cloud có sẵn cho dự án Firebase của bạn.

Giải pháp Giám sát trên đám mây hữu ích đối với một số loại cảnh báo:

  • Nếu không có tài nguyên mà dự án của bạn cần (cho cả hai tài nguyên) Firebase và các dịch vụ của Google Cloud, mà ngay cả đối với các dịch vụ bên ngoài, như AWS)

  • Nếu các dịch vụ như Cloud Functions mất nhiều thời gian hơn dự kiến phản hồi

  • Nếu bộ chứa Cloud Storage, thực thể Cơ sở dữ liệu theo thời gian thực, hoặc Phiên bản Cloud Firestore đang từ chối quá nhiều yêu cầu (một dấu hiệu cho thấy Quy tắc bảo mật của Firebase có thể không chính xác).

  • Nếu lượng tài nguyên mà một số sản phẩm Firebase của bạn sử dụng đã tăng trên một ngưỡng nhất định

Cảnh báo được tạo thông qua giải pháp Giám sát trên đám mây thường được gửi nhanh hơn so với email cảnh báo về ngân sách đơn giản, thường được gửi một lần mỗi ngày. Cảnh báo có thể dưới dạng tin nhắn SMS, tin nhắn trên kênh Slack, thông báo PagerDuty, webhook và nhiều thiết bị khác. Các tuỳ chọn này cho phép bạn gửi cảnh báo cao hơn và nhiều hình ảnh hơn mức độ hiển thị có thể hành động.

Sử dụng giải pháp Giám sát trên đám mây

Để bắt đầu sử dụng giải pháp Giám sát trên đám mây, bạn nên bắt đầu bằng Trình khám phá chỉ số, cho phép bạn tạo biểu đồ gồm các chỉ số tuỳ chỉnh trong Dự án Firebase/Google Cloud và trực quan hoá việc sử dụng của chúng.

Cụ thể, bạn có thể xem các tài nguyên như Cloud Firestore, Cơ sở dữ liệu theo thời gian thực hoặc các phiên bản của Chức năng đám mây. Bạn có thể xem thông tin về việc sử dụng những sản phẩm này (như số lần đọc tài liệu, số byte đã gửi hoặc chức năng lệnh gọi) sẽ có ảnh hưởng đến việc thanh toán của bạn.

Sau khi bạn đã thấy rõ mức sử dụng tài nguyên trong phần Chỉ số Explorer, bạn nên tạo một chính sách cảnh báo về các chỉ số mà bạn quan tâm nhất. Sau đây là một số ví dụ về chính sách cảnh báo:

  • Nếu số lượng tài liệu đọc trong khoảng thời gian 30 phút lớn hơn giá trị cụ thể

  • Nếu việc sử dụng một tài nguyên cụ thể (như lệnh gọi hàm) có vẻ là tăng quá nhanh trong một khoảng thời gian nhất định

Tạo logic thanh toán bổ sung

Thông báo về ngân sách tự động gửi email khi ngân sách của bạn đạt đến một mức nhất định nhưng dùng để cảnh báo hoặc phản ứng có lập trình tinh vi hơn mức chi tiêu tăng lên, bạn có thể xem xét thiết lập thêm logic tuỳ chỉnh về tin nhắn trong Google Cloud Pub/Sub.

Ví dụ: Bạn có thể gửi thông báo đến các kênh Slack hoặc qua tin nhắn văn bản, hoặc bạn thực hiện các thay đổi có lập trình cho ứng dụng hoặc dự án của bạn tuỳ thuộc vào mức chi tiêu.

Pub/Sub là một dịch vụ chuyển tin nhắn cho phép các dịch vụ khác gửi các thông báo (thường ở dạng dữ liệu JSON) theo cách không đồng bộ thông qua các kênh chủ đề Pub/Sub. Bạn có thể thiết lập các thiết bị được uỷ quyền dịch vụ, như Cloud Functions để nghe thông báo về những chủ đề này và hành động đối với dữ liệu một cách thích hợp.

Xin lưu ý rằng thông báo thanh toán qua Pub/Sub sẽ được gửi khoảng một lần mỗi 20 phút cho dù mức sử dụng thanh toán của bạn có thay đổi hay không và đó phi trạng thái (nghĩa là người dùng không cung cấp ngữ cảnh về nội dung đứng trước). Nếu bạn muốn theo dõi mức tăng chi tiêu bất thường theo thời gian, hoặc so sánh chi tiêu của mình sang chu kỳ trước, bạn sẽ cần phải quản lý dữ liệu dữ liệu của bạn thông qua một cơ sở dữ liệu như Cloud Firestore hoặc Cơ sở dữ liệu theo thời gian thực.

Sử dụng các chủ đề Pub/Sub bằng Cloud Functions

Bạn có thể thiết lập chủ đề Pub/Sub cho dữ liệu thanh toán của mình bằng cách truy cập ngân sách được liên kết với dự án Firebase của bạn trong bảng điều khiển Google Cloud (trong phần Thanh toán > Ngân sách và cảnh báo), sau đó nhấp vào hộp đánh dấu Kết nối một chủ đề Pub/Sub với ngân sách này. Điều này sẽ tạo ra một Chủ đề Pub/Sub mà bạn có thể nghe sau. Để biết các bước chi tiết, hãy tham khảo tài liệu đầy đủ.

Sau khi tạo chủ đề thanh toán Pub/Sub, bạn có thể viết Chức năng đám mây để nghe chủ đề này và hành động dựa trên dữ liệu cho phù hợp. Chiến lược phát hành đĩa đơn được gửi dưới dạng dữ liệu JSON và bao gồm các thông tin hữu ích như số tiền bạn đã chi tiêu cho đến thời điểm này, số tiền ngân sách và ngày bắt đầu chiến dịch hiện tại chu kỳ thanh toán.

Tài liệu của Google Cloud có đầy đủ thông tin chi tiết về cách nhận dữ liệu này bằng cách sử dụng Chức năng đám mây. Tuy nhiên, nếu bạn đang sử dụng Cloud Functions cho Firebase để triển khai các hàm của bạn, quy trình chung sẽ đơn giản hơn một chút (hãy xem tài liệu về Firebase). Bạn cũng có thể tham khảo video này để xem hướng dẫn từng bước mẫu về quy trình.

Sau khi nhận được dữ liệu này, bạn có thể phản hồi tin nhắn đó. Dưới đây là một số tùy chọn: