Theo dõi và bảo vệ ứng dụng web

Sau khi xuất bản ứng dụng, bạn nên theo dõi và bảo mật ứng dụng:

Theo dõi hiệu suất của trang web bằng tính năng quan sát App Hosting

Bảng điều khiển Tổng quan về ứng dụng trong Firebase Studio cung cấp các chỉ số và thông tin chính về ứng dụng, cho phép bạn theo dõi hiệu suất của ứng dụng web bằng các công cụ quan sát tích hợp của App Hosting. Sau khi trang web của bạn ra mắt, bạn có thể truy cập vào trang tổng quan bằng cách nhấp vào Xuất bản. Trên bảng điều khiển này, bạn có thể:

  • Nhấp vào Xuất bản để phát hành phiên bản mới của ứng dụng.
  • Chia sẻ đường liên kết đến ứng dụng hoặc mở ứng dụng trực tiếp trong phần Truy cập ứng dụng.
  • Xem lại bản tóm tắt hiệu suất của ứng dụng trong 7 ngày qua, bao gồm tổng số yêu cầu và trạng thái của bản ra mắt mới nhất. Nhấp vào Xem thông tin chi tiết để truy cập vào nhiều thông tin hơn nữa trong Firebase bảng điều khiển.
  • Xem biểu đồ về số lượng yêu cầu mà ứng dụng của bạn đã nhận được trong 24 giờ qua, được chia theo mã trạng thái HTTP.
  • Xem trạng thái kích hoạt của các dịch vụ Firebase như Firebase AuthenticationCloud Firestore.

Nếu đóng bảng điều khiển Tổng quan về ứng dụng, bạn có thể mở lại bảng điều khiển này bất cứ lúc nào bằng cách nhấp vào Xuất bản.

Tìm hiểu thêm về cách quản lý và giám sát các bản phát hành của App Hosting tại Quản lý các bản phát hành và bản phát hành.

Genkit theo dõi cho các tính năng đã triển khai

Bạn có thể theo dõi các bước, dữ liệu đầu vào và đầu ra của tính năng Genkit bằng cách bật tính năng đo từ xa cho mã luồng AI. Tính năng đo từ xa cho Genkit cho phép bạn theo dõi hiệu suất và mức sử dụng của các luồng AI. Dữ liệu này có thể giúp bạn xác định những điểm cần cải thiện, khắc phục các vấn đề, tối ưu hoá lời nhắc và luồng để cải thiện hiệu suất và hiệu quả chi phí, đồng thời theo dõi mức sử dụng các luồng theo thời gian.

Để thiết lập tính năng giám sát trong Genkit, bạn hãy thêm tính năng đo từ xa vào các luồng AI (trí tuệ nhân tạo) của Genkit sau đó xem kết quả trong bảng điều khiển của Firebase.

Bước 1: Thêm tính năng đo từ xa vào mã luồng Genkit trong Firebase Studio

Cách thiết lập tính năng theo dõi trong mã:

  1. Nếu bạn chưa ở chế độ xem Code, hãy nhấp vào Biểu tượng chuyển đổi mã Chuyển sang mã để mở chế độ này.

  2. Kiểm tra package.json để xác minh phiên bản Genkit đã cài đặt.

  3. Mở thiết bị đầu cuối (Ctrl-Shift-C hoặc Cmd-Shift-C trong MacOS).

  4. Nhấp vào bên trong thiết bị đầu cuối rồi cài đặt trình bổ trợ Firebase bằng phiên bản phù hợp với tệp package.json. Ví dụ: nếu các Genkit gói trong package.json ở phiên bản 1.0.4, bạn nên chạy lệnh sau để cài đặt trình bổ trợ:

    npm i --save @genkit-ai/firebase@1.0.4
  5. Trong Trình khám phá, hãy mở rộng src > ai > flows. Một hoặc nhiều tệp TypeScript chứa các luồng Genkit sẽ xuất hiện trong thư mục flows.

  6. Nhấp vào một trong các luồng để mở luồng đó.

  7. Ở cuối phần nhập của tệp, hãy thêm nội dung sau để nhập và bật FirebaseTelemetry:

    import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
    
    enableFirebaseTelemetry();
    

Bước 2: Thiết lập quyền

Firebase Studio đã bật các API bắt buộc cho bạn khi thiết lập dự án Firebase, nhưng bạn cũng cần cấp quyền cho tài khoản dịch vụ App Hosting.

Cách thiết lập quyền:

  1. Trong bảng điều khiển của Google Cloud, hãy chuyển đến trang IAM rồi chọn dự án Firebase.

  2. Cấp các vai trò sau cho tài khoản dịch vụ App Hosting:

    • Monitoring Metric Writer (roles/monitoring.metricWriter)
    • Cloud Trace Agent (roles/cloudtrace.agent)
    • Logs Writer (roles/logging.logWriter)
  3. Xuất bản lại ứng dụng lên App Hosting.

  4. Khi quá trình xuất bản hoàn tất, hãy tải ứng dụng và bắt đầu sử dụng. Sau 5 phút, ứng dụng của bạn sẽ bắt đầu ghi dữ liệu đo từ xa.

Bước 3: Theo dõi các tính năng AI tạo sinh trên bảng điều khiển Firebase

Khi tính năng đo từ xa được định cấu hình, Genkit sẽ ghi lại số lượng yêu cầu, số lượng yêu cầu thành công và độ trễ cho tất cả các luồng của bạn. Đối với từng luồng cụ thể, Genkit sẽ thu thập các chỉ số về độ ổn định, hiển thị biểu đồ chi tiết và ghi lại các dấu vết đã thu thập.

Cách theo dõi các tính năng AI được triển khai bằng Genkit:

  1. Sau 5 phút, trong bảng điều khiển của Firebase, hãy chuyển đến Dịch vụ AI > Genkit để xem các lời nhắc và câu trả lời từ Genkit.

  2. Bạn có thể xem các Chỉ số về độ ổn định sau đây do Genkit tổng hợp:

    • Tổng số yêu cầu: Tổng số yêu cầu mà luồng của bạn đã nhận được.
    • Tỷ lệ thành công: Tỷ lệ phần trăm yêu cầu được xử lý thành công.
    • Độ trễ ở phân vị thứ 95: Độ trễ ở phân vị thứ 95 của luồng, tức là thời gian cần thiết để xử lý 95% yêu cầu.
    • Số token đã dùng:

      • Token đầu vào: Số token được gửi đến mô hình trong lời nhắc.
      • Token đầu ra: Số token do mô hình tạo trong câu trả lời.
    • Mức sử dụng hình ảnh:

      • Hình ảnh đầu vào: Số hình ảnh được gửi đến mô hình trong lời nhắc.
      • Hình ảnh đầu ra: Số hình ảnh do mô hình tạo trong câu trả lời.
  3. Bạn có thể mở rộng các chỉ số về độ ổn định để xem các biểu đồ chi tiết sau:

    • Số lượng yêu cầu theo thời gian.
    • Tỷ lệ thành công theo thời gian.
    • Token đầu vào và đầu ra theo thời gian.
    • Độ trễ (phân vị thứ 95 và 50) theo thời gian.

Tìm hiểu thêm về Genkit trong tài liệu của họ .

Bảo vệ ứng dụng của bạn bằng Firebase App Check

Nếu bạn đã tích hợp các dịch vụ Firebase hoặc Google Cloud vào ứng dụng, Firebase App Check giúp bảo vệ phần phụ trợ của ứng dụng khỏi hành vi lạm dụng bằng cách ngăn các ứng dụng khách không được uỷ quyền truy cập vào tài nguyên Firebase. Tính năng này hoạt động với cả các dịch vụ của Google (bao gồm cả các dịch vụ Firebase và Google Cloud) và phần phụ trợ tuỳ chỉnh của riêng bạn để đảm bảo an toàn cho tài nguyên.

Bạn nên thêm App Check vào mọi ứng dụng mà bạn đăng công khai để bảo vệ tài nguyên phụ trợ khỏi hành vi lạm dụng.

Phần này hướng dẫn bạn cách thiết lập App Check trong Firebase Studio bằng reCAPTCHA Enterprise cho một ứng dụng web do App Prototyping agent tạo, nhưng bạn có thể thiết lập App Check trong bất kỳ ứng dụng nào triển khai các dịch vụ Firebase và có thể triển khai nhà cung cấp tuỳ chỉnh. Tìm hiểu thêm tại Firebase App Check.

ReCAPTCHA Enterprise cung cấp tối đa 10.000 bài đánh giá miễn phí.

Bước 1: Thiết lập reCAPTCHA Enterprise cho ứng dụng

  1. Mở phần reCAPTCHA Enterprise của bảng điều khiển Google Cloud.

  2. Chọn tên dự án Firebase của bạn trong trình chọn dự án của bảng điều khiển Google Cloud console.

  3. Nếu bạn được nhắc bật reCAPTCHA Enterprise API, hãy bật.

  4. Nhấp vào Bắt đầu rồi thêm Tên hiển thị cho khoá trang web reCAPTCHA.

  5. Chấp nhận khoá Loại ứng dụng Web mặc định.

  6. Nhấp vào Thêm miền rồi thêm một miền. Bạn nên thêm miền App Hosting (ví dụ: studio--PROJECT_ID.REGION.hosted.app) và mọi miền tuỳ chỉnh mà bạn sử dụng hoặc dự định sử dụng với ứng dụng của mình.

  7. Nhấp vào Bước tiếp theo.

  8. Không chọn Bạn sẽ sử dụng thử thách?.

  9. Nhấp vào Tạo khoá.

  10. Sao chép và lưu Mã khoá rồi chuyển sang phần Định cấu hình App Check.

Bước 2: Định cấu hình App Check

  1. Mở bảng điều khiển Firebase rồi nhấp vào Xây dựng > Kiểm tra ứng dụng trong trình đơn điều hướng.

  2. Nhấp vào Bắt đầu, sau đó nhấp vào Đăng ký bên cạnh ứng dụng của bạn.

  3. Nhấp để mở rộng ReCAPTCHA rồi dán Mã khoá mà bạn đã tạo cho reCAPTCHA Enterprise.

  4. Nhấp vào Lưu.

Bước 3: Thêm App Check vào mã

  1. Quay lại Firebase Studio rồi ở chế độ xem Code, hãy thêm khoá trang web mà bạn đã tạo vào tệp .env của bạn:

    NEXT_PUBLIC_RECAPTCHA_SITE_KEY=RECAPTCHA_SITE_KEY
    
  2. Nếu bạn chưa lưu cấu hình Firebase vào .env, hãy lấy cấu hình đó:

    • Trong bảng điều khiển của Firebase Firebase, hãy mở Cài đặt dự án rồi tìm cấu hình đó trong phần tương ứng với ứng dụng của bạn.

    • Trong Thiết bị đầu cuối ở chế độ xem Code:

      1. Đăng nhập vào Firebase: firebase auth login
      2. Chọn dự án: firebase use FIREBASE_PROJECT_ID
      3. Lấy cấu hình Firebase: firebase apps:sdkconfig
  3. Thêm cấu hình vào tệp .env để cấu hình đó có dạng như sau:

    NEXT_PUBLIC_FIREBASE_API_KEY=FIREBASE_API_KEY
    NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=FIREBASE_AUTH_DOMAIN
    NEXT_PUBLIC_FIREBASE_PROJECT_ID=FIREBASE_PROJECT_ID
    NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=FIREBASE_STORAGE_BUCKET
    NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=FIREBASE_MESSAGING_SENDER_ID
    NEXT_PUBLIC_FIREBASE_APP_ID=FIREBASE_APP_ID
    NEXT_PUBLIC_RECAPTCHA_SITE_KEY=RECAPTCHA_SITE_KEY
    
  4. Thêm App Check vào mã ứng dụng. Bạn có thể yêu cầu Gemini thêm App Check bằng reCAPTCHA Enterprise vào ứng dụng của mình (nhớ chỉ định "reCAPTCHA Enterprise" và nhớ kiểm tra kỹ!), hoặc làm theo các bước trong Khởi chạy App Check.

  5. Xuất bản lại trang web lên App Hosting. Hãy thử kiểm thử cơ sở dữ liệu và các tính năng xác thực để tạo một số dữ liệu.

  6. Xác minh rằng App Check đang nhận yêu cầu trong Firebase bảng điều khiển bằng cách mở Bản dựng > Kiểm tra ứng dụng.

  7. Nhấp để kiểm tra Cloud Firestore. Sau khi xác minh rằng các yêu cầu đã đến, hãy nhấp vào Thực thi để thực thi App Check.

  8. Lặp lại quy trình xác minh và thực thi cho Firebase Authentication.

Nếu sau khi đăng ký ứng dụng cho App Check, bạn muốn chạy ứng dụng trong một môi trường mà App Check thường không phân loại là hợp lệ, chẳng hạn như cục bộ trong quá trình phát triển hoặc từ môi trường tích hợp liên tục (CI), bạn có thể tạo bản dựng gỡ lỗi của ứng dụng sử dụng nhà cung cấp gỡ lỗi của App Check thay vì nhà cung cấp chứng thực thực. Tìm hiểu thêm tại Sử dụng App Check với nhà cung cấp gỡ lỗi trong ứng dụng web.

Các bước tiếp theo