###前提・実現したいこと
GooogleAnalyticsAPIとの接続ができない
###発生している問題・エラーメッセージ
wordpressのドキュメントルート中に自分が作成した.phpのテストコードファイルを設置したら
HTTP ERROR 500 になってしまいました。
参照したサイトが以下になります。
https://www.tam-tam.co.jp/tipsnote/program/post9065.html
php.ini
で log_errors = On
に設定しましたが、エラーログにエラー内容は書き出されませんでした。
Nginxのアクセスログも見ましたが、ステータス500のアクセスがあるとしか記されていなく、
ブラウザ上でデベロッパーツールを開いても、「ステータスが500である」という情報以外は得られませんでした。
また、ini_set("display_errors", 1);
をファイルの最上部に設定し、エラー内容を表示させようとしましたが、何も表示されませんでした。
逐一、Nginxやphp-fpmの再起動もして、エラーログも見ましたがヒントになるものはありませんでした。
こんな時はどうやってデバッグすればよいのでしょうか?
何が原因でエラーになってしまうのでしょうか?
###該当のソースコード
やりたかったこととしては、「GoogleAnalyticsのAPIでデータを取得したかった」になります。
<?php ini_set("display_errors", 1); error_reporting(E_ALL); // ライブラリの読み込み require_once './google-api-php-client/src/Google/autoload.php'; // サービスアカウントのメールアドレス $service_account_email = 'id-***@my-project-**************.iam.gserviceaccount.com'; // 秘密キーファイルの読み込み $key = file_get_contents('MyProject-**************.p12'); // プロファイル(ビュー)ID $profile ='********'; // Googleクライアントのインスタンスを作成 $client = new Google_Client(); $analytics = new Google_Service_Analytics($client); // クレデンシャルの作成 $cred = new Google_Auth_AssertionCredentials( $service_account_email, array(Google_Service_Analytics::ANALYTICS_READONLY), $key ); $client->setAssertionCredentials($cred); if($client->getAuth()->isAccessTokenExpired()) { $client->getAuth()->refreshTokenWithAssertion($cred); } //var_dump($analytics);exit; //var_dump($cred);exit; $result = $analytics->data_ga->get('ga:'.$profile,'7daysAgo','yesterday','ga:sessions'); // 結果を出力 echo $result -> rows[0][0];
.p12ファイルの設置であるとか、サービスの登録やライブラリのインストールができていることは確認済みです。
コメントアウトしてある var_dummp
の部分まではPHPは動いていて、それぞれの中身が表示されているのは確認しました。
次の ->get
を実行するところでナニカがおかしくなっているようです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー