Ghi nhật ký kiểm tra cho Nhắn tin qua đám mây của Firebase

Trang này mô tả nhật ký kiểm tra do Firebase tạo như một phần của Nhật ký kiểm tra đám mây .

Tổng quan

Dịch vụ Firebase viết nhật ký kiểm tra để giúp bạn trả lời các câu hỏi "Ai đã làm gì, ở đâu và khi nào?". Đây là Nhật ký kiểm tra đám mây, được cung cấp như một phần của dự án Google Cloud Platform được kết nối với dự án Firebase của bạn .

Mỗi dự án Firebase của bạn chỉ chứa nhật ký kiểm tra các tài nguyên trực tiếp trong dự án.

Để biết tổng quan chung về Nhật ký kiểm tra đám mây, hãy xem Tổng quan về Nhật ký kiểm tra đám mây . Để hiểu sâu hơn về định dạng nhật ký kiểm tra, hãy xem Tìm hiểu nhật ký kiểm tra .

Nhật ký kiểm tra có sẵn

Các loại nhật ký kiểm tra sau đây có sẵn cho Bảng điều khiển thông báo Firebase :

  • Nhật ký kiểm tra truy cập dữ liệu

    Bao gồm các thao tác "đọc của quản trị viên" để đọc siêu dữ liệu hoặc thông tin cấu hình. Cũng bao gồm các hoạt động "đọc dữ liệu" và "ghi dữ liệu" để đọc hoặc ghi dữ liệu do người dùng cung cấp.

    Để nhận nhật ký kiểm tra Truy cập dữ liệu, bạn phải bật chúng một cách rõ ràng.

Để biết mô tả đầy đủ hơn về các loại nhật ký kiểm tra, hãy xem Các loại nhật ký kiểm tra .

Hoạt động được kiểm toán

Phần sau đây tóm tắt các hoạt động API tương ứng với từng loại nhật ký kiểm tra trong Bảng điều khiển thông báo Firebase:

Danh mục nhật ký kiểm tra Hành động của Bảng điều khiển thông báo Firebase Nhập tên (được sử dụng để tìm kiếm nhật ký trên giao diện người dùng)
Nhật ký truy cập dữ liệu (DATA_READ) Nhận một chiến dịch Nhận chiến dịch
Nhật ký truy cập dữ liệu (DATA_READ) Liệt kê các chiến dịch Danh sáchChiến dịch
Nhật ký truy cập dữ liệu (DATA_READ) Nhận thông tin từ thông báo thử nghiệm ABT LegacyNhậnTriển khai
Nhật ký truy cập dữ liệu (DATA_READ) Nhận khả năng nhắm mục tiêu Nhận khán giả
Nhật ký truy cập dữ liệu (DATA_READ) Nhận số liệu thống kê fcm (Số lượng đã gửi/Mở/Đã gửi/Đã chuyển đổi) Nhận số liệu thống kê Fcm
Nhật ký truy cập dữ liệu (DATA_READ) Nhận danh sách nhãn phân tích cho phạm vi ngày và dự án. GetAnalyticsDanh sách nhãn
Nhật ký truy cập dữ liệu (DATA_WRITE) Tạo bản giới thiệu từ ABT LegacyTạoTriển khai

Định dạng nhật ký kiểm tra

Các mục nhật ký kiểm tra bao gồm các đối tượng sau:

  • Bản thân mục nhật ký, là một đối tượng thuộc loại LogEntry . Các trường hữu ích bao gồm:

    • logName chứa ID tài nguyên và loại nhật ký kiểm tra.
    • resource chứa mục tiêu của hoạt động được kiểm toán.
    • timestamp chứa thời gian của hoạt động được kiểm toán.
    • protoPayload chứa thông tin đã được kiểm tra.
  • Dữ liệu ghi nhật ký kiểm tra, là đối tượng AuditLog được giữ trong trường protoPayload của mục nhập nhật ký.

  • Thông tin kiểm tra dành riêng cho dịch vụ tùy chọn, là đối tượng dành riêng cho dịch vụ. Đối với các tích hợp cũ hơn, đối tượng này được giữ trong trường serviceData của đối tượng AuditLog ; tích hợp mới hơn sử dụng trường metadata .

Để biết các trường khác trong các đối tượng này và cách diễn giải chúng, hãy xem lại Tìm hiểu nhật ký kiểm tra .

Tên nhật ký

Tên tài nguyên Nhật ký kiểm tra đám mây cho biết dự án Firebase hoặc thực thể GCP khác sở hữu nhật ký kiểm tra và liệu nhật ký đó có chứa dữ liệu ghi nhật ký kiểm tra Hoạt động của quản trị viên, Quyền truy cập dữ liệu, Bị từ chối chính sách hay Sự kiện hệ thống hay không. Ví dụ: phần sau đây hiển thị tên nhật ký cho nhật ký kiểm tra Hoạt động quản trị cấp dự án và nhật ký kiểm tra Truy cập dữ liệu của tổ chức. Các biến biểu thị số nhận dạng tổ chức và dự án Firebase.

projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access

Tên dịch vụ

Nhật ký kiểm tra của Bảng điều khiển thông báo Firebase sử dụng tên dịch vụ gcmcontextualcampaign-pa.googleapis.com .

Để biết danh sách đầy đủ tất cả các tên dịch vụ API ghi nhật ký Stackdriver và loại tài nguyên được giám sát tương ứng của chúng, hãy xem Ánh xạ dịch vụ tới tài nguyên .

Các loại tài nguyên

Nhật ký kiểm tra của Bảng điều khiển thông báo Firebase sử dụng loại tài nguyên audited_resource cho tất cả nhật ký kiểm tra.

Để biết danh sách tất cả các loại tài nguyên được giám sát Ghi nhật ký Stackdriver và thông tin mô tả, hãy xem Các loại tài nguyên được giám sát .

Bật ghi nhật ký kiểm tra

Nhật ký kiểm tra Truy cập dữ liệu bị tắt theo mặc định và không được ghi trừ khi được bật rõ ràng (ngoại lệ là nhật ký kiểm tra Truy cập dữ liệu cho BigQuery, không thể tắt nhật ký này).

Để biết hướng dẫn về cách bật một số hoặc tất cả nhật ký kiểm tra Truy cập dữ liệu của bạn, hãy xem Định cấu hình nhật ký Truy cập dữ liệu .

Quyền và vai trò

Các quyền và vai trò của Cloud IAM xác định khả năng truy cập dữ liệu nhật ký kiểm tra trong tài nguyên GCP của bạn.

Khi quyết định các quyền và vai trò ghi nhật ký cụ thể nào áp dụng cho trường hợp sử dụng của bạn, hãy xem xét những điều sau:

  • Vai trò Người xem nhật ký ( roles/logging.viewer ) cung cấp cho bạn quyền truy cập chỉ đọc vào nhật ký kiểm tra Hoạt động của quản trị viên, Bị từ chối chính sách và Sự kiện hệ thống. Nếu chỉ có vai trò này, bạn không thể xem nhật ký kiểm tra Truy cập dữ liệu trong nhóm _Default .

  • Vai trò Trình xem nhật ký riêng tư (roles/logging.privateLogViewer ) bao gồm các quyền có trong roles/logging.viewer , cùng với khả năng đọc nhật ký kiểm tra Truy cập dữ liệu trong nhóm _Default .

    Lưu ý rằng nếu các nhật ký riêng tư này được lưu trữ trong các nhóm do người dùng xác định thì bất kỳ người dùng nào có quyền đọc nhật ký trong các nhóm đó đều có thể đọc nhật ký riêng tư. Để biết thêm thông tin về nhóm nhật ký, hãy xem Tổng quan về định tuyến và lưu trữ .

Để biết thêm thông tin về các quyền và vai trò của Cloud IAM áp dụng cho dữ liệu nhật ký kiểm tra, hãy xem Kiểm soát quyền truy cập .

Xem các bản ghi

Để tìm và xem nhật ký kiểm tra, bạn cần biết mã định danh của dự án, thư mục hoặc tổ chức Firebase mà bạn muốn xem thông tin nhật ký kiểm tra. Bạn có thể chỉ định thêm các trường LogEntry được lập chỉ mục khác, như resource.type ; để biết chi tiết, hãy xem lại Tìm mục nhật ký nhanh chóng .

Sau đây là tên nhật ký kiểm tra; chúng bao gồm các biến dành cho số nhận dạng của dự án, thư mục hoặc tổ chức Firebase:

   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Factivity
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   folders/FOLDER_ID/logs/cloudaudit.googleapis.com%2Fpolicy

   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Factivity
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fdata_access
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
   organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com%2Fpolicy

Bạn có thể xem nhật ký kiểm tra trong Ghi nhật ký Stackdriver bằng Bảng điều khiển GCP, công cụ dòng lệnh gcloud hoặc API ghi nhật ký.

Bảng điều khiển

Bạn có thể sử dụng Logs Explorer trong Bảng điều khiển GCP để truy xuất các mục nhật ký kiểm tra cho dự án, thư mục hoặc tổ chức Firebase của mình:

  1. Trong Bảng điều khiển GCP, đi tới trang Ghi nhật ký > Nhật ký Explorer .

    Đi tới trang Logs Explorer

  2. Trên trang Logs Explorer , chọn dự án, thư mục hoặc tổ chức Firebase hiện có.

  3. Trong ngăn Trình tạo truy vấn , hãy làm như sau:

    • Trong Loại tài nguyên , hãy chọn tài nguyên GCP có nhật ký kiểm tra mà bạn muốn xem.

    • Trong Tên nhật ký , chọn loại nhật ký kiểm tra mà bạn muốn xem:

      • Đối với nhật ký kiểm tra Hoạt động của quản trị viên, hãy chọn hoạt động .
      • Đối với nhật ký kiểm tra Truy cập dữ liệu, hãy chọn data_access .
      • Đối với nhật ký kiểm tra Sự kiện hệ thống, hãy chọn system_event .
      • Đối với nhật ký kiểm tra Chính sách bị Từ chối, hãy chọn chính sách .

    Nếu bạn không thấy các tùy chọn này thì tức là không có bất kỳ nhật ký kiểm tra nào thuộc loại đó trong dự án, thư mục hoặc tổ chức Firebase.

    Để biết thêm chi tiết về cách truy vấn bằng Logs Explorer, hãy xem Xây dựng truy vấn nhật ký .

gcloud

Công cụ dòng lệnh gcloud cung cấp giao diện dòng lệnh cho API ghi nhật ký Stackdriver. Cung cấp PROJECT_ID hợp lệ, FOLDER_ID hoặc ORGANIZATION_ID trong mỗi tên nhật ký.

Để đọc các mục nhật ký kiểm tra cấp dự án Firebase của bạn, hãy chạy lệnh sau:

gcloud logging read "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com" --project=PROJECT_ID

Để đọc các mục nhật ký kiểm tra cấp thư mục của bạn, hãy chạy lệnh sau:

gcloud logging read "logName : folders/FOLDER_ID/logs/cloudaudit.googleapis.com" --folder=FOLDER_ID

Để đọc các mục nhật ký kiểm tra cấp tổ chức của bạn, hãy chạy lệnh sau:

gcloud logging read "logName : organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com" --organization=ORGANIZATION_ID

Để biết thêm thông tin về cách sử dụng công cụ gcloud , hãy xem Đọc mục nhật ký .

API

Khi xây dựng các truy vấn của bạn, hãy thay thế các biến bằng các giá trị hợp lệ, thay thế tên hoặc mã định danh nhật ký kiểm tra cấp dự án, cấp thư mục hoặc cấp tổ chức thích hợp như được liệt kê trong tên nhật ký kiểm tra. Ví dụ: nếu truy vấn của bạn bao gồm PROJECT_ID thì mã định danh dự án bạn cung cấp phải tham chiếu đến dự án Firebase hiện được chọn.

Để sử dụng API ghi nhật ký nhằm xem các mục nhật ký kiểm tra của bạn, hãy làm như sau:

  1. Đi tới phần Thử API này trong tài liệu về phương thức entries.list .

  2. Đặt nội dung sau vào phần nội dung Yêu cầu của biểu mẫu Dùng thử API này . Việc nhấp vào biểu mẫu được điền trước này sẽ tự động điền vào nội dung yêu cầu nhưng bạn cần cung cấp PROJECT_ID hợp lệ trong mỗi tên nhật ký.

    {
      "resourceNames": [
        "projects/PROJECT_ID"
      ],
      "pageSize": 5,
      "filter": "logName : projects/PROJECT_ID/logs/cloudaudit.googleapis.com"
    }
    
  3. Nhấp vào Thực thi .

Để biết thêm chi tiết về truy vấn, hãy xem Ghi nhật ký ngôn ngữ truy vấn .

Để biết ví dụ về mục nhật ký kiểm tra và cách tìm thông tin quan trọng nhất trong đó, hãy xem Mục nhập nhật ký kiểm tra mẫu .

Nhật ký kiểm tra lộ trình

Bạn có thể định tuyến nhật ký kiểm tra đến các đích được hỗ trợ giống như cách bạn có thể định tuyến các loại nhật ký khác. Dưới đây là một số lý do bạn có thể muốn định tuyến nhật ký kiểm tra của mình:

  • Để lưu giữ nhật ký kiểm tra trong thời gian dài hơn hoặc để sử dụng các khả năng tìm kiếm mạnh mẽ hơn, bạn có thể định tuyến bản sao nhật ký kiểm tra của mình tới Google Cloud Storage, BigQuery hoặc Google Cloud Pub/Sub. Sử dụng Cloud Pub/Sub, bạn có thể định tuyến đến các ứng dụng khác, các kho lưu trữ khác và tới các bên thứ ba.

  • Để quản lý nhật ký kiểm tra của bạn trên toàn bộ tổ chức, bạn có thể tạo các hệ thống lưu trữ tổng hợp có thể định tuyến nhật ký từ bất kỳ hoặc tất cả các dự án Firebase trong tổ chức.

  • Nếu nhật ký kiểm tra Truy cập dữ liệu đã bật của bạn đang đẩy các dự án Firebase vượt quá phân bổ nhật ký của bạn, thì bạn có thể tạo các phần lưu trữ loại trừ nhật ký kiểm tra Truy cập dữ liệu khỏi Ghi nhật ký.

Để biết hướng dẫn về nhật ký định tuyến, hãy xem Định cấu hình bồn rửa .

Định giá

Nhật ký kiểm tra Hoạt động của quản trị viênnhật ký kiểm tra Sự kiện hệ thống là miễn phí.

Nhật ký kiểm tra quyền truy cập dữ liệunhật ký kiểm tra Chính sách bị từ chối đều phải trả phí.

Để biết thêm thông tin về giá Ghi nhật ký Stackdriver, hãy xem giá bộ hoạt động của Google Cloud: Ghi nhật ký Stackdriver .