API مدیریت گوگل آنالیتیکس به شما این امکان را می دهد که به صورت برنامه ریزی شده گزارش های بدون نمونه ایجاد کنید.
معرفی
گزارشهای بدون نمونه، گزارشهای گوگل آنالیتیکس هستند که با استفاده از دادههای نمونهبرداری نشده تولید شدهاند. گزارشهای بدون نمونه در حال حاضر فقط برای کاربران Google Analytics 360 در دسترس هستند.
با این API می توانید:
- اطلاعات پیکربندی مربوط به تمام گزارشهای نمونهبرداری نشده موجود خود را بازیابی کنید. ایجاد گزارش های بدون نمونه یکباره
- وضعیت پردازش گزارش های نمونه برداری نشده را بررسی کنید.
- پس از تکمیل پردازش، پیوندی به فایل داده برای یک گزارش بدون نمونه دریافت کنید.
- حذف گزارش های بدون نمونه
بازیابی داده ها برای گزارش های نمونه برداری نشده
وقتی گزارشی بدون نمونه ایجاد میکنید، ممکن است مدتی طول بکشد تا گزارش برای دانلود در دسترس باشد. فیلد status
یک گزارش نمونه برداری نشده نشان می دهد که آیا پردازش آن گزارش کامل شده است یا خیر. هنگامی که وضعیت بهعنوان COMPLETED
علامتگذاری شد، میتوانید از downloadType
و قسمت جزئیات دانلود مربوطه برای بازیابی فایلی که حاوی دادههای گزارش است استفاده کنید. مثلا:
- اگر مقدار
downloadType
GOOGLE_DRIVE
است، از قسمتdriveDownloadDetails
استفاده کنید. - اگر مقدار
downloadType
GOOGLE_CLOUD_STORAGE
است، از قسمتcloudStorageDownloadDetails
استفاده کنید.
برای بررسی وضعیت این گزارشها از نظرسنجی مداوم و با نرخ بالا استفاده نکنید، زیرا احتمالاً سهمیه روزانه خود را نسبتاً سریع تمام میکنید. هنگام بررسی وضعیت گزارش های نمونه برداری نشده باید بین درخواست ها تاخیر زمانی داشته باشید.
با استفاده از Google Drive / Google Cloud Storage API
بسته به جایی که فایلهای شما تحویل داده میشوند (Google Drive یا Google Cloud Storage)، پیوند مربوطه را برای آن فایل دریافت خواهید کرد. برای دانلود فایل با استفاده از این لینک می توانید از Drive API یا Cloud Storage API استفاده کنید. برای جزئیات بیشتر در مورد نحوه بازیابی فایل، به اسناد Google Drive API یا Google Cloud Storage API مراجعه کنید.
به عنوان مثال، اگر گزارش نمونه برداری نشده شما در Google Drive ذخیره می شود، می توانید یک درخواست HTTP GET مجاز به URL منبع فایل ارسال کنید و پارامتر جستار alt=media
را در آن بگنجانید.
GET /drive/v2/files/XXXXXX?alt=media
Host: www.googleapis.com
Content-length: 0
Authorization: Bearer ya29.AHESVbXTUv5mHMo3RYfmS1YJonjzzdTOFZwvyOAUVhrs
جایی که XXXXXX
گزارش نمونه برداری نشده driveDownloadDetails.documentId
است
احراز هویت
اگر قصد دارید از گزارش Unsampled به همراه APIهای Drive یا Cloud Storage برای دانلود فایل استفاده کنید، باید در هنگام درخواست توکن OAuth 2.0، محدوده تأیید اعتبار مربوطه را برای آن API (علاوه بر حوزه تأیید API Analytics) در نظر بگیرید. این به شما این امکان را می دهد که از یک نشانه تأیید اعتبار برای هر دو API استفاده کنید.
حذف گزارش های نمونه برداری نشده
میتوانید گزارشهای بدون نمونه برنامهریزیشده یا تکمیلشده را حذف کنید ، اما فراخوانی delete
در مدت کوتاهی که گزارش در حال تولید است، منجر به خطا میشود. حذف گزارشهای بدون نمونه فقط منبع را از نمای GA شما (نمایه) حذف میکند، دادههای صادر شده در Google Drive یا Google Cloud Storage باقی میمانند.
محدودیت های
محدودیت های زیر برای ایجاد گزارش های بدون نمونه اعمال می شود:
- شما فقط می توانید تا 4 بعد را مشخص کنید.
- برخی از انواع داده های گزارش پشتیبانی نمی شوند، به عنوان مثال، Google Ads Data.
- پرس و جوهایی که خیلی گران تلقی می شوند پشتیبانی نمی شوند.
- اگر بسیاری از گزارشهای بدون نمونه ایجاد کردهاید و به حد مجاز رسیدهاید، میتوانید با خیال راحت منابع گزارش نمونهنشده را حذف کنید و دادههای گزارش تولید شده در Google Drive یا Google Cloud دست نخورده باقی بمانید.
اگر تعیین شود که درخواست شما خیلی گران است، عملیات ایجاد یک خطا با یک پیام مناسب برمیگرداند. اگر این اتفاق افتاد می توانید:
- درخواست ابعاد کمتر
- پرس و جو را به چند پرس و جو با محدوده تاریخ کوچکتر تقسیم کنید و گزارش های حاصل را به هم بپیچید.
موارد استفاده
گزارش های نمونه برداری نشده و API گزارش اصلی
اگر از Core Reporting API برای بازیابی دادههای گزارش استفاده میکنید و حاوی دادههای نمونه است، میتوانید یک گزارش بدون نمونه برای همان پرسوجو به صورت زیر ایجاد کنید:
- یک درخواست Core Reporting API ایجاد کنید.
- در پاسخ، ویژگی containSampledData را بررسی کنید تا ببینید داده ها نمونه برداری شده اند یا خیر.
- اگر این ویژگی روی true تنظیم شده باشد، می توانید از فیلدهای query و profileInfo از همان پاسخ برای ایجاد یک درخواست برای یک گزارش بدون نمونه استفاده کنید.
نمونه فیلد پرس و جو از پاسخ Core Reporting API:
"query": {
"start-date": "2011-01-01",
"end-date": "2011-01-31",
"ids": "ga:1234",
"dimensions": "ga:browser",
"metrics": [
"ga:visits"
],
"filters": "ga:country==US",
"start-index": 1,
"max-results": 1000
}
نمونه فیلد profileInfo
از پاسخ Core Reporting API:
"profileInfo": {
"profileId": "1234",
"accountId": "12345",
"webPropertyId": "UA-12345-1",
"internalWebPropertyId": "11254",
"profileName": "Name of the profile",
"tableId": "ga:1234"
}
در زیر نمونه ای از نحوه ایجاد یک گزارش بدون نمونه از پاسخ Core Reporting API آورده شده است:
جاوا
// Make a Core Reporting API call.
GaData reportingApiData = v3.data().ga().get(...).execute();
// Check if the response is sampled.
if (reportingApiData.getContainsSampledData()) {
// Use the “query” object to construct an unsampled report object.
Query query = reportingApiData.getQuery();
UnsampledReport report = new UnsampledReport()
.setDimensions(query.getDimensions())
.setMetrics(Joiner.on(',').join(query.getMetrics()))
.setStartDate(startDate)
.setEndDate(endDate)
.setSegment(query.getSegment())
.setFilters(query.getFilters())
.setTitle(“My unsampled report”);
// Use “profileInfo” to create an InsertRequest for creating an
// unsampled report.
ProfileInfo profileInfo = reportingApiData.getProfileInfo();
Insert insertRequest = analytics.management().unsampledReports()
.insert(profileInfo.getAccountId(),
profileInfo.getWebPropertyId(),
profileInfo.getProfileId(),
report);
UnsampledReport createdReport = insertRequest.execute();
}
دوخت داده های نمونه برداری نشده برای چند روز
میتوانید گزارشها را برای چند روز ترکیب یا به هم بچسبانید تا دادههای نمونهگیری نشده را در یک محدوده تاریخی خاص دریافت کنید. این زمانی مفید است که یک درخواست داده نمونه برداری نشده خیلی بزرگ باشد. در چنین مواردی، میتوانید درخواست را به چندین درخواست با بازه زمانی کوتاهتر تقسیم کنید و سپس نتایج را ترکیب کنید.
خط مشی سهمیه
برای فهرست کامل محدودیتها و سهمیههایی که هنگام ایجاد گزارشهای بدون نمونه اعمال میشوند، به پیکربندی و گزارش محدودیتها و سهمیههای API مراجعه کنید.