Tính năng kiểm tra nhật ký truy vấn cho phép bạn tạo báo cáo về tất cả công việc đã thực hiện bằng tài khoản Ads Data Hub của bạn. Nhờ đó, bạn có thể trả lời các câu hỏi liên quan đến người đã truy cập vào dữ liệu của bạn và thời điểm họ truy cập.
Bài kiểm tra nhật ký truy vấn được viết dưới dạng bảng BigQuery chứa các mục nhập nhật ký cho tất cả các truy vấn chạy bằng tài khoản Ads Data Hub của bạn. Để xem kiểm tra nhật ký truy vấn cho tài khoản của bạn, trước tiên, bạn cần tạo báo cáo thông qua API. Mỗi nhật ký kiểm tra chứa dữ liệu trong 1 ngày. Bạn có thể tạo nhật ký kiểm tra cho bất kỳ ngày nào trong vòng 30 ngày qua.
Chỉ các siêu người dùng mới có thể kiểm tra nhật ký truy vấn. Tìm hiểu thêm về quyền truy cập dựa trên vai trò
Định dạng kiểm tra nhật ký truy vấn
Mỗi lượt kiểm tra nhật ký truy vấn sử dụng giản đồ sau:
Tên trường | Nội dung mô tả |
---|---|
customer_id | Mã khách hàng Ads Data Hub |
ads_customer_id | Mã của tài khoản phụ, nếu được sử dụng (nếu không sẽ giống với customer_id) |
match_table_customer_id | Mã của tài khoản chứa bảng so khớp, nếu được sử dụng (nếu không sẽ giống với customer_id) |
user_email | Địa chỉ email của người dùng đã chạy truy vấn |
query_start_time | Thời điểm truy vấn bắt đầu chạy |
query_end_time | Thời điểm truy vấn chạy xong |
query_type | Sự khác biệt giữa truy vấn phân tích và truy vấn đối tượng |
query_resource_id | Mã được liên kết với truy vấn |
query_text | SQL của truy vấn |
query_parameters | |
query_parameters.name | Tên tham số của truy vấn |
query_parameters.value | Giá trị được chuyển qua tham số row_merge_summary của truy vấn |
row_merge_summary.column_name | Tên cột |
row_merge_summary.merge_type | Tóm tắt loại nội dung hợp nhất hàng |
row_merge_summary.constant_value | Giá trị của tập hợp hằng số (sẽ có giá trị rỗng nếu không sử dụng hằng số nào) |
destination_table | Vị trí (trong BigQuery) mà truy vấn được ghi vào |
Truy cập vào kiểm tra nhật ký truy vấn
Để truy cập vào các bài kiểm tra nhật ký truy vấn, bạn sẽ cần gọi API. Tìm mã mẫu để gọi API bên dưới hoặc xem tài liệu tham khảo rồi viết truy vấn của riêng bạn.
Kết quả của yêu cầu API sẽ được ghi vào tập dữ liệu BigQuery mà bạn chỉ định trong phần nội dung của yêu cầu API.
"""This sample shows how to create a query history audit.
For the program to execute successfully, ensure that you run it using Python 3.
"""
from __future__ import print_function
from json import dumps
from google_auth_oauthlib import flow
from googleapiclient.discovery import build
appflow = flow.InstalledAppFlow.from_client_secrets_file(
# Replace client_secrets.json with your own client secret file.
'client_secrets.json',
scopes=['https://www.googleapis.com/auth/adsdatahub'])
appflow.run_local_server()
credentials = appflow.credentials
developer_key = input('Developer key: ').strip()
service = build('adsdatahub', 'v1', credentials=credentials,
developerKey=developer_key)
def pprint(x):
print(dumps(x, sort_keys=True, indent=4))
customer_id = input('Customer ID (e.g. "customers/123"): ').strip()
bq_project = input('Destination BigQuery project ID (e.g. "your-project"): ').strip()
dataset_id = input('Destination BigQuery dataset (e.g. "your-dataset"): ').strip()
start = input('The start date for your query history audit. Formatted as "mm/dd/yyyy": ').strip().split('/')
end = input('The end date for your query history audit. Should be 1 day later than start_date. Formatted as "mm/dd/yyyy": ').strip().split('/')
choice = input("Do you want to enter a timezone? Defaults to UTC otherwise. (y/n) ")
if choice.lower() == 'y':
timezone = input("Timezone (e.g. 'UTC'): ")
else:
timezone = 'UTC'
body = {
'project_id': bq_project,
'dataset': dataset_id,
'start_date': {
'year': start[2],
'day': start[1],
'month': start[0]
},
'end_date': {
'year': end[2],
'day': end[1],
'month': end[0]
},
'time_zone': timezone
}
pprint(service.customers().exportJobHistory(customer=customer_id, body=body).execute())