คุณสร้างรายงานการเข้าถึงข้อมูลได้โดยใช้เมธอดของ Admin API v1
runAccessReport
รายงานนี้จะแสดงทุกครั้งที่ผู้ใช้เข้าถึงข้อมูล Google Analytics ระบบจะเก็บรักษาบันทึกการเข้าถึงข้อมูลไว้เป็นเวลาสูงสุด 2 ปี รายงานการเข้าถึงข้อมูลจะใช้ได้กับผู้ใช้ที่มีบทบาทผู้ดูแลระบบ เท่านั้น
ขอรายงานการเข้าถึงข้อมูลโดยใช้ไลบรารีของไคลเอ็นต์
วิธีที่เร็วที่สุดในการเริ่มต้นใช้งานรายงานการเข้าถึงข้อมูลคือการใช้ไลบรารี ของไคลเอ็นต์
ดูคำอธิบายเกี่ยวกับวิธีติดตั้งและกำหนดค่าไลบรารีของไคลเอ็นต์ Google Analytics ได้ในคู่มือเริ่มใช้งานฉบับย่อสำหรับ
ตัวอย่างต่อไปนี้ใช้ไลบรารีของไคลเอ็นต์ Python ซึ่งเรียกใช้การค้นหาการเข้าถึงข้อมูลและพิมพ์การตอบกลับ
Python
from datetime import datetime from google.analytics.admin import AnalyticsAdminServiceClient from google.analytics.admin_v1alpha.types import ( AccessDateRange, AccessDimension, AccessMetric, RunAccessReportRequest, ) def run_sample(): """Runs the sample.""" # TODO(developer): Replace this variable with your Google Analytics 4 # property ID (e.g. "123456") before running the sample. property_id = "YOUR-GA4-PROPERTY-ID" run_access_report(property_id) def run_access_report(property_id: str, transport: str = None): """ Runs an access report for a Google Analytics property. The report will aggregate over dimensions `userEmail`, `accessedPropertyId`, `reportType`, `revenueDataReturned`, `costDataReturned`, `userIP`, and return the access count, as well as the most recent access time for each combination. See https://developers.google.com/analytics/devguides/config/admin/v1/access-api-schema for the description of each field used in a data access report query. Args: property_id(str): The Google Analytics Property ID. transport(str): The transport to use. For example, "grpc" or "rest". If set to None, a transport is chosen automatically. """ client = AnalyticsAdminServiceClient(transport=transport) request = RunAccessReportRequest( entity=f"properties/{property_id}", dimensions=[ AccessDimension(dimension_name="userEmail"), AccessDimension(dimension_name="accessedPropertyId"), AccessDimension(dimension_name="reportType"), AccessDimension(dimension_name="revenueDataReturned"), AccessDimension(dimension_name="costDataReturned"), AccessDimension(dimension_name="userIP"), AccessDimension(dimension_name="mostRecentAccessEpochTimeMicros"), ], metrics=[AccessMetric(metric_name="accessCount")], date_ranges=[AccessDateRange(start_date="yesterday", end_date="today")], ) access_report = client.run_access_report(request) print("Result:") print_access_report(access_report) def print_access_report(response): """Prints the access report.""" print(f"{response.row_count} rows received") for dimensionHeader in response.dimension_headers: print(f"Dimension header name: {dimensionHeader.dimension_name}") for metricHeader in response.metric_headers: print(f"Metric header name: {metricHeader.metric_name})") for rowIdx, row in enumerate(response.rows): print(f"\nRow {rowIdx}") for i, dimension_value in enumerate(row.dimension_values): dimension_name = response.dimension_headers[i].dimension_name if dimension_name.endswith("Micros"): # Convert microseconds since Unix Epoch to datetime object. dimension_value_formatted = datetime.utcfromtimestamp( int(dimension_value.value) / 1000000 ) else: dimension_value_formatted = dimension_value.value print(f"{dimension_name}: {dimension_value_formatted}") for i, metric_value in enumerate(row.metric_values): metric_name = response.metric_headers[i].metric_name print(f"{metric_name}: {metric_value.value}")
ฟีเจอร์ที่แชร์กับรายงานหลัก
คำขอรายงานการเข้าถึงข้อมูลมีความหมายเหมือนกับคำขอรายงานหลักสำหรับฟีเจอร์ทั่วไปหลายรายการ เช่น การแบ่งหน้า, ตัวกรองมิติข้อมูล และช่วงวันที่ทำงานเหมือนกัน ในรายงานทั้ง 2 ประเภท
ทำความคุ้นเคยกับภาพรวมของรายงานหลักใน Data API v1 แล้วกลับมาที่หน้านี้เพื่อดูข้อมูลเพิ่มเติม เกี่ยวกับรายงานการเข้าถึงข้อมูล
สร้างรายงานการเข้าถึงข้อมูล
ใช้เมธอด runAccessReport เพื่อ ขอรายงานการเข้าถึงข้อมูล
เลือกเอนทิตีการรายงาน
เช่นเดียวกับฟังก์ชัน
การรายงานหลักของ
Data API v1
เมธอด runAccessReport ของ Google Analytics Admin API v1 กำหนดให้ระบุตัวระบุพร็อพเพอร์ตี้
Google Analytics ภายใน
เส้นทางคำขอ URL ในรูปแบบ properties/GA_PROPERTY_ID เช่น
POST https://analyticsadmin.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runAccessReport
ระบบจะสร้างรายงานการเข้าถึงข้อมูลที่ได้ขึ้นอยู่กับบันทึกการเข้าถึงข้อมูล Google Analytics ของพร็อพเพอร์ตี้ Google Analytics ที่ระบุ
หากคุณใช้ไลบรารีของไคลเอ็นต์ Admin API รายการใดรายการหนึ่ง
คุณไม่จำเป็นต้องจัดการเส้นทาง URL ของคำขอด้วยตนเอง ไคลเอ็นต์ API ส่วนใหญ่มีพารามิเตอร์ property ที่คาดหวังสตริงในรูปแบบ properties/GA_PROPERTY_ID ดูตัวอย่างการใช้ไลบรารีของไคลเอ็นต์ได้ในข้อมูล
โค้ดที่
จุดเริ่มต้นของหน้านี้
เลือกมิติข้อมูลและเมตริก
มิติข้อมูล
จะอธิบายและจัดกลุ่มข้อมูลการเข้าถึงของพร็อพเพอร์ตี้ เช่น มิติข้อมูล userEmail จะระบุอีเมลของผู้ใช้ที่เข้าถึงข้อมูลการรายงาน
ค่ามิติข้อมูลในการตอบกลับของรายงานจะเป็นสตริง
เมตริก
แสดงการวัดเชิงปริมาณของรายงาน เมตริก accessCount จะแสดงผลจำนวนบันทึกการเข้าถึงข้อมูลทั้งหมด
ดูรายการชื่อมิติข้อมูลและ เมตริกทั้งหมดที่ใช้ได้ในคำขอรายงานการเข้าถึงข้อมูลได้ที่สคีมาการเข้าถึงข้อมูล
ขอรายงาน
หากต้องการขอรายงานการเข้าถึงข้อมูล ให้สร้างออบเจ็กต์ RunAccessReportRequest เราขอแนะนำให้เริ่มต้นด้วยพารามิเตอร์คำขอต่อไปนี้
- รายการที่ถูกต้องอย่างน้อย 1 รายการในช่องวันที่ ช่วง
- รายการที่ถูกต้องอย่างน้อย 1 รายการในช่อง มิติข้อมูล
- หากไม่ได้ใช้มิติข้อมูล
epochTimeMicrosให้ใช้รายการที่ถูกต้องอย่างน้อย 1 รายการใน ช่อง เมตริก เพื่อรับข้อมูลเชิงปริมาณสำหรับค่ามิติข้อมูลแต่ละชุดใน รายงาน
ตัวอย่างคำขอที่มีช่องที่แนะนำมีดังนี้ การค้นหานี้จะสร้างรายการอีเมลของผู้ใช้ เวลาล่าสุดที่ผู้ใช้เข้าถึงพร็อพเพอร์ตี้ที่ระบุในช่วง 7 วันที่ผ่านมา และจำนวนการเข้าถึงที่เกี่ยวข้อง
HTTP
POST https://analyticsadmin.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runAccessReport
{
"dateRanges": [
{
"startDate": "7daysAgo",
"endDate": "today"
}
],
"dimensions": [
{
"dimensionName": "mostRecentAccessEpochTimeMicros"
},
{
"dimensionName": "userEmail"
}
],
"metrics": [
{
"metricName": "accessCount"
}
]
}
อ่านการตอบกลับ
การตอบกลับของรายงานการเข้าถึงข้อมูลประกอบด้วย
ส่วนหัวและแถวเป็นหลัก ส่วนหัวประกอบด้วย
AccessDimensionHeaders
และ
AccessMetricHeaders
ซึ่งแสดงรายการคอลัมน์ในรายงาน
แต่ละแถวของ
รายงานการเข้าถึง
ประกอบด้วย
AccessDimensionValues
และ
AccessMetricValues
สำหรับคอลัมน์ในรายงาน ลำดับของคอลัมน์จะสอดคล้องกันในคำขอ ส่วนหัว และทุกแถว
ตัวอย่างการตอบกลับสำหรับตัวอย่างคำขอก่อนหน้ามีดังนี้
{
"dimensionHeaders": [
{
"dimensionName": "mostRecentAccessEpochTimeMicros"
},
{
"dimensionName": "userEmail"
}
],
"metricHeaders": [
{
"metricName": "accessCount"
}
],
"rows": [
{
"dimensionValues": [
{
"value": "1667591408427733"
},
{
"value": "Bola@example.net"
}
],
"metricValues": [
{
"value": "1238"
}
]
},
{
"dimensionValues": [
{
"value": "1667710959827161"
},
{
"value": "Alex@example.net"
}
],
"metricValues": [
{
"value": "475"
}
]
},
{
"dimensionValues": [
{
"value": "1667868650762743"
},
{
"value": "Mahan@example.net"
}
],
"metricValues": [
{
"value": "96"
}
]
}
],
"rowCount": 3
}
กรองตามบันทึกการเข้าถึง
ใช้ช่อง dimensionFilter ของออบเจ็กต์ RunAccessReportRequest เพื่อจำกัดการตอบกลับของรายงานให้แสดงเฉพาะค่ามิติข้อมูลที่ตรงกับ ตัวกรอง
ตัวอย่างต่อไปนี้จะสร้างรายงานตามบันทึกการเข้าถึงข้อมูลแต่ละรายการ โดยกรองตามบันทึกการเข้าถึงของผู้ใช้รายเดียวที่มีอีเมล Alex@example.net รายงานจะมีเวลาของบันทึกการเข้าถึงแต่ละรายการ อีเมลและ IP ของผู้ใช้
HTTP
POST https://analyticsadmin.googleapis.com/v1beta/properties/GA_PROPERTY_ID:runAccessReport
{
"dateRanges": [
{
"startDate": "7daysAgo",
"endDate": "today"
}
],
"dimensions": [
{
"dimensionName": "epochTimeMicros"
},
{
"dimensionName": "userEmail"
},
{
"dimensionName": "userIP"
}
],
"dimensionFilter": {
"accessFilter": {
"fieldName": "userEmail",
"stringFilter": {
"matchType": "EXACT",
"value": "Alex@example.net"
}
}
}
}
ในทำนองเดียวกัน คุณสามารถใช้ช่อง
metricFilter
ของออบเจ็กต์
RunAccessReportRequest
เพื่อจำกัดการตอบกลับของรายงานให้แสดงเฉพาะค่าเมตริกที่
ตรงกับตัวกรอง
ตัวอย่างต่อไปนี้จะสร้างรายงานที่มีอีเมลและจำนวนการเข้าถึงของผู้ใช้ทั้งหมดที่เข้าถึงพร็อพเพอร์ตี้ที่ระบุมากกว่า 100 ครั้ง
HTTP
{
"dateRanges": [
{
"startDate": "7daysAgo",
"endDate": "today"
}
],
"dimensions": [
{
"dimensionName": "userEmail"
}
],
"metricFilter": {
"accessFilter": {
"numericFilter": {
"operation": "GREATER_THAN",
"value": {
"int64Value": 100
}
},
"fieldName": "accessCount"
}
},
"metrics": [
{
"metricName": "accessCount"
}
]
}
รายงานตัวอย่าง
ตัวอย่างรายงานที่คุณลองใช้ได้มีดังนี้
การเข้าถึงล่าสุด
ตัวอย่างรายงานการเข้าถึงต่อไปนี้สร้างได้โดยใช้ runAccessReport
| เวลาการเข้าถึงล่าสุดซึ่งแสดงเป็นเวลา Epoch ของ Unix โดยวัดเป็นไมโครวินาที | อีเมลผู้ใช้ | จำนวนการเข้าถึง |
|---|---|---|
| 1525220215025371 | Bola@example.net | 5 |
| 1525220215028361 | Alex@example.net | 36 |
| 1525220215027671 | Charlie@example.net | 1153 |
| 1525220215027341 | Mahan@example.net | 1 |
รายงานนี้สร้างได้โดยการค้นหา
มิติข้อมูล mostRecentAccessEpochTimeMicros,
userEmail และ accessCount เมตริก รายงานจะมี 1 แถวต่อผู้ใช้แต่ละราย โดยมิติข้อมูล mostRecentAccessEpochTimeMicrosจะรวมบันทึกการเข้าถึงข้อมูลของผู้ใช้แต่ละรายที่เข้าถึงพร็อพเพอร์ตี้ และแสดงผลเวลาเข้าถึงล่าสุด (เป็น ไมโครวินาทีของ Unix นับตั้งแต่เวลา
Epoch) สำหรับแต่ละแถว
รายละเอียดการเข้าถึงของผู้ใช้
อีกตัวอย่างหนึ่งของรายงานที่มีประโยชน์คือรายละเอียดการเข้าถึงของผู้ใช้ตามกลไกการเข้าถึง (เช่น อินเทอร์เฟซผู้ใช้ Google Analytics, API เป็นต้น)
| เวลาการเข้าถึงล่าสุดซึ่งแสดงเป็นเวลา Epoch ของ Unix โดยวัดเป็นไมโครวินาที | อีเมลผู้ใช้ | กลไกการเข้าถึง | จำนวนการเข้าถึง |
|---|---|---|---|
| 1525220215028367 | Alex@example.net | Firebase | 31 |
| 1525220215555778 | Alex@example.net | อินเทอร์เฟซผู้ใช้ Google Analytics | 1 |
| 1525220215022378 | Bola@example.net | อินเทอร์เฟซผู้ใช้ Google Analytics | 65 |
| 1525220215026389 | Bola@example.net | Google Analytics API | 894 |
| 1525220215025631 | Charlie@example.net | Google Analytics API | 67 |
| 1525220215068325 | Mahan@example.net | Google Ads | 3 |
รายงานนี้สร้างได้โดยการค้นหา
มิติข้อมูล mostRecentAccessEpochTimeMicros,
userEmail, accessMechanism, และaccessCount
เมตริก
รายงานจะมี 1 แถวต่อชุดค่าผสมของผู้ใช้/กลไกการเข้าถึง มิติข้อมูล mostRecentAccessEpochTimeMicros จะแสดงเวลาล่าสุดที่ผู้ใช้เข้าถึงพร็อพเพอร์ตี้โดยใช้กลไกการเข้าถึงที่ระบุ
ภาพรวมการเข้าถึงพร็อพเพอร์ตี้
คุณสร้างรายงานสำหรับพร็อพเพอร์ตี้ได้โดยไม่ต้องแบ่งย่อยตามผู้ใช้แต่ละราย ตัวอย่างเช่น รายงานต่อไปนี้จะระบุความถี่ในการเข้าถึงพร็อพเพอร์ตี้โดยใช้กลไกการเข้าถึงต่างๆ
| รหัสพร็อพเพอร์ตี้ที่เข้าถึง | ชื่อพร็อพเพอร์ตี้ที่เข้าถึง | กลไกการเข้าถึง | จำนวนการเข้าถึง |
|---|---|---|---|
| 12345678 | DemoApp | Firebase | 31 |
| 12345678 | DemoApp | อินเทอร์เฟซผู้ใช้ Google Analytics | 624 |
| 12345678 | DemoApp | Google Ads | 83 |
| 12345678 | DemoApp | Google Analytics API | 1744 |
รายงานนี้สร้างได้โดยการค้นหา
มิติข้อมูล accessedPropertyId,
accessedPropertyName, accessMechanism, และaccessCount
เมตริก
รายงานจะมี 1 แถวต่อชุดค่าผสมของรหัสพร็อพเพอร์ตี้/กลไกการเข้าถึง
การเข้าถึงข้อมูลแต่ละรายการ
หากต้องการสร้างรายงานที่แต่ละแถวอิงตามบันทึกการเข้าถึงข้อมูลแต่ละรายการ ให้ละเว้นมิติข้อมูล mostRecentAccessEpochTimeMicros จากการค้นหาและใช้มิติข้อมูล epochTimeMicros แทน คุณไม่จำเป็นต้องค้นหาเมตริก accessCount เนื่องจากทุกแถวของรายงานมีข้อมูลเกี่ยวกับการเข้าถึงข้อมูลแต่ละครั้ง
รายงานต่อไปนี้มีข้อมูลโดยละเอียดเกี่ยวกับแต่ละครั้งที่ผู้ใช้เข้าถึงพร็อพเพอร์ตี้ที่ระบุ
| เวลา Epoch ของ Unix โดยวัดเป็นไมโครวินาที | อีเมลผู้ใช้ | รหัสพร็อพเพอร์ตี้ที่เข้าถึง | ชื่อพร็อพเพอร์ตี้ที่เข้าถึง | IP ผู้ใช้ | กลไกการเข้าถึง | ข้อมูลค่าใช้จ่ายที่แสดงผล | ข้อมูลรายได้ที่แสดงผล |
|---|---|---|---|---|---|---|---|
| 1525220215025371 | Bola@example.net | 12345678 | DemoApp | 1.2.3.1 | อินเทอร์เฟซผู้ใช้ Google Analytics | จริง | จริง |
| 1525220645645645 | Mahan@example.net | 12345678 | DemoApp | 1.2.3.5 | อินเทอร์เฟซผู้ใช้ Google Analytics | เท็จ | เท็จ |
| 1525220211312322 | Bola@example.net | 12345678 | DemoApp | 11.22.33.11 | Google Ads | จริง | เท็จ |
| 1525220210234221 | Alex@example.net | 12345678 | DemoApp | 11.22.33.22 | Firebase | เท็จ | เท็จ |
| 1525220215028368 | Alex@example.net | 12345678 | DemoApp | 1.2.3.2 | Google Ads | เท็จ | เท็จ |
| 1525220214234231 | Mahan@example.net | 12345678 | DemoApp | 11.22.33.55 | Google Ads | จริง | จริง |
| 1525220423423452 | Charlie@example.net | 12345678 | DemoApp | 1.2.3.3 | Google Analytics API | จริง | เท็จ |
| 1525220132312333 | Mahan@example.net | 12345678 | DemoApp | 1.2.3.5 | Google Ads | จริง | จริง |
รายงานนี้สร้างได้โดยการค้นหา
มิติข้อมูล epochTimeMicros, userEmail,
accessedPropertyId, accessedPropertyName, userIP, accessMechanism,
costDataReturned, revenueDataReturned.