見出し画像

getActiveUserメソッドでGAS実行のログを取得[GAS]

Google Apps Scriptを用いて便利ツールを作成し社内に展開したような際、誰がどれくらいの頻度で使ってくれているのか気になることがあります。
企業のような組織体でGoogle Workspaceを運用しているとログのようなものが取得できます。

Session.getActiveUser().getEmail() メソッドを用います。

サンプルはこちら。
使い回ししやすいよう別関数にしてみました。

function myFunction() {

  //処理など

  const user = Session.getActiveUser().getEmail();
  addLog(user);

}

//addStaffListSsの実行ログを書き込むfunction
function addLog(user) {

  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('log');
  const now   = Utilities.formatDate(new Date, 'JST', 'yyyy/MM/dd HH:mm:ss');

  const data = [now,  user];
  sheet.appendRow(data);

}

getEmailメソッドで取得した実行者情報(メアド)を別関数に渡し、
現在時刻も取得して、実行時間と実行者メアドを別シートに記録していきます。

GAS実行者を記録すると、実行数が多い人にフィードバックをもらいにいく…など次のアクションにつながりおススメです。

いいなと思ったら応援しよう!