Google Apps ScriptのログをGoogle Cloud Platformで確認する方法

Google Apps Scriptのログ確認、Logger.log()使ってますか?
Google Cloud Platform(GCP)を利用すれば、より見やすく便利なログ確認ができるのでおすすめです。

こんな感じでGCP上でログ確認ができます。

その便利さとやり方について紹介します。

GCPでログ確認するのが便利な理由

1. ログが蓄積される

Logger.log()でログ確認する場合、メソッド実行した1回しか確認できないので少し不便です。

対して、GCPならログが蓄積されるのでおすすめ!

2. Logger.log()で出力されないログも確認できる

Googleフォームの送信データの確認などの場合、Logger.log()では出力されないことがあります。GCPでは正常に出力されてログ確認ができるのでおすすです。

GCPでログ確認する方法

概要は下記の通り。

  • GCPでApps Script用のプロジェクトを作成する
  • 作成したプロジェクトのOAuth同意画面の設定を行う
  • Apps Scriptで、作成したプロジェクトのプロジェクト番号を入力し、連携させる
  • Script内にconsole.log()を記述し、GCPの「ログビューア」でログを確認する

1. GCPにログイン

Googleアカウントがあれば、GCPにログインできますので、まずはGCPにログインしましょう。

https://console.cloud.google.com/?hl=ja

2. Google Apps Script用のプロジェクトを作成

Google Cloud Platformロゴの横にある、プロジェクト名が表示されているボタンをクリック。

プロジェクト選択画面で右上の「新しいプロジェクト」をクリック。

新規プロジェクトのプロジェクト名を入力し、「作成」をクリック。

再度プロジェクト選択画面で、今作成したプロジェクトをクリック。

プロジェクト番号は後ほど使いますので、コピーしておいてください。

3. OAuth同意画面を設定

サイドバーから「APIとサービス > OAuth同意画面」をクリック。

User Typeとして内部と外部が選択できるようになっていますが、G Suiteを利用していて、組織内部のみで使用したい場合は「内部」そうでない場合は「外部」を選択して「作成」をしましょう。

そもそもG Suiteを利用していない場合は「外部」しか選べないので、そのまま「外部」→「作成」とクリックしましょう。

OAuth同意画面の設定ですが、「アプリケーション名」と箇所に好きな名前を入れてOKですが、分かりやすいようにGASのプロジェクト名などを入れておけば良いでしょう。

「保存」を押して、設定完了です。

これで、Google Cloud Platformでの設定まわりはすべて完了です。

4. GASでプロジェクトを設定

Google Apps Scriptのメニューバーから「リソース > Cloud Platform プロジェクト」をクリック。

入力欄に、先ほどコピーしておいたプロジェクト番号を入力し、「プロジェクトを設定」をクリック。

その後表示される画面では「確認」をクリック。

上記の画面が表示されれば、Apps ScriptとGCPで作成したプロジェクトとの連携が完了しました。

5. GCPの「ログビューア」でログ確認

実際にログの確認方法を見ていきましょう。
ログを吐かせたい箇所で、
console.log()
を記述。

例として、Googleフォームを送信した際に回答データを取得するメソッドを作成してみました。

// 定義
var Q_NAME = '氏名';
var Q_FOOD = '好きな食べ物';


/**
 * フォームの送信データの処理
 * @params e 送信データ 
 */
function submitForm(e) {
  
  // 送信データ
  var data = e.namedValues;
  
  var name = data[Q_NAME];
  var food = data[Q_FOOD];
  
  console.log(data);
}

サイドバーから「Logging > ログビューア」をクリック。
※「Logging」は少し下の方にあります。

出力するログの種類を選択できるプルダウンで、「Apps Script 関数」を選択しましょう。

これで無事、ログが出力されます。
jsonPayload内messageオブジェクトに内容が出力されます。

Logger.log()との使い分け

Logger.log()は簡単にログ確認ができる(Ctrl + Enter, ⌘ + Enterでショートカット確認が可能)ので、サクッと確認したいときにはLogger.log()を、

オブジェクトの中身やより複雑なログの確認をしたい場合にはconsole.log()でGCP上での確認がおすすです。

コメントを残す