ביקורות של היסטוריית השאילתות מאפשרות ליצור דוח של כל המשימות שמופעלות באמצעות חשבון Ads Data Hub שלכם. כך תוכלו לענות על שאלות שקשורות למי ניגש לנתונים שלכם ומתי.
ביקורות של היסטוריית שאילתות נכתבות כטבלאות ב-BigQuery, שמכילות רשומות ביומן לכל השאילתות שמריצים באמצעות חשבון Ads Data Hub. כדי להציג ביקורות של היסטוריית שאילתות בחשבון שלכם, קודם צריך ליצור את הדוח באמצעות ממשק API. כל יומן ביקורת מכיל נתונים של יום אחד. אפשר ליצור יומן ביקורת לכל יום במהלך 30 הימים האחרונים.
ביקורות של היסטוריית שאילתות זמינות רק למשתמשי-על. מידע נוסף על גישה מבוססת-תפקיד
פורמט ביקורת של היסטוריית שאילתות
כל ביקורת של היסטוריית שאילתות משתמשת בסכימה הבאה:
שם השדה | התיאור |
---|---|
customer_id | מספר הלקוח ב-Ads Data Hub |
ads_customer_id | המזהה של חשבון המשנה, אם ייעשה בו שימוש (אחרת, המזהה יהיה זהה ל-customer_id) |
match_table_customer_id | מספר החשבון שמכיל את טבלת ההתאמות, אם נעשה בו שימוש (אחרת, המזהה יהיה זהה ל-customer_id) |
user_email | כתובת האימייל של המשתמש שהריץ את השאילתה |
query_start_time | השעה שבה השאילתה התחילה לרוץ |
query_end_time | משך הזמן שבו השאילתה הסתיימה |
query_type | הבחנה בין שאילתות ניתוח לבין שאילתות של קהל |
query_resource_id | המזהה המשויך לשאילתה |
query_text | ערך ה-SQL של השאילתה |
query_parameters | |
query_parameters.name | שם הפרמטר של השאילתה |
query_parameters.value | הערך שהועבר דרך הפרמטר row_merge_summary של השאילתה |
row_merge_summary.column_name | שם העמודה |
row_merge_summary.merge_type | סיכום הסוג של מיזוג השורות |
row_merge_summary.constant_value | הערך של הקבוצה הקבועה (אם לא ייעשה שימוש בערך קבוע, הוא יהיה ריק) |
destination_table | המיקום (ב-BigQuery) שאליו נכתבה השאילתה |
גישה לביקורות של היסטוריית השאילתות
כדי לגשת לביקורות של היסטוריית השאילתות, עליך להפעיל את ה-API. למטה ניתן למצוא קוד לדוגמה לקריאה ל-API, או לעיין במסמכי התיעוד ולכתוב שאילתה משלך.
התוצאות של בקשת ה-API ייכתבו למערך הנתונים ב-BigQuery שציינתם בגוף בקשת ה-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())