Google Analytics API V4 пользовательский отчет - PullRequest
0 голосов
/ 06 июня 2019

Я пытаюсь автоматизировать аналитический отчет Google о наших веб-сайтах приложений, примерно 55 или около того.

Что мне нужно, это:

avg time
users new/returning
direct/referral/search
users per day (based on 1st of the month to the last day)

Я использую руководство от Google

https://developers.google.com/analytics/devguides/reporting/core/v4/quickstart/web-php

моя функция для отчета примерно такая:

function getReport($analytics) {

  // Replace with your view ID, for example XXXX.
  $VIEW_ID = "XXXX";

  // Create the DateRange object.
  $dateRange = new Google_Service_AnalyticsReporting_DateRange();
  $dateRange->setStartDate("2019-05-01");
  $dateRange->setEndDate("2019-05-31");

  // Create the Metrics object.
  $sessions = new Google_Service_AnalyticsReporting_Metric();
  $sessions->setExpression("ga:sessions");
  $sessions->setAlias("sessions");

  $users = new Google_Service_AnalyticsReporting_Metric();
  $users->setExpression("ga:users");
  $users->setAlias("users");

  $newSessions = new Google_Service_AnalyticsReporting_Metric();
  $newSessions->setExpression("ga:percentNewSessions");
  $newSessions->setAlias("newSessions");

  // Create the ReportRequest object.
  $request = new Google_Service_AnalyticsReporting_ReportRequest();
  $request->setViewId($VIEW_ID);
  $request->setDateRanges($dateRange);
  $request->setMetrics(array($sessions,$users,$newSessions));

  $body = new Google_Service_AnalyticsReporting_GetReportsRequest();
  $body->setReportRequests( array( $request) );
  return $analytics->reports->batchGet( $body );
}

Конечно, я определенно не экспериментирую с некоторыми метриками.

Я пытался вернуть пользователей в день, как это

  $monthusers = new Google_Service_AnalyticsReporting_Metric();
  $monthusers->setExpression("ga:30dayUsers");
  $monthusers->setAlias("monthusers");

а затем в запросе

$request->setMetrics(array($sessions,$users,$newSessions,$monthusers));

но выдает ошибку 500, есть идеи, как вернуть пользователей в день? и на основании:

$dateRange->setStartDate("2019-05-01");
$dateRange->setEndDate("2019-05-31");

1 Ответ

0 голосов
/ 09 июня 2019

Как указано в Dimensions & Metrics Explorer для метрики "ga: 30dayUsers" :

Как минимум один из ga: nthDay, ga: date или ga: день должен быть указан как измерение для запроса этой метрики.

Вы можете использовать измерение ga:day в запросе отчета для решения проблемы:

$day = new Google_Service_AnalyticsReporting_Dimension();
$day->setName("ga:day");

$request->setDimensions(array($day));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...