Googleドライブの使用容量をGASで取得する方法(getStorageUsed)

2022年8月22日

Google Apps Script(GAS)でGoogleドライブにデータを保存する際、容量オーバーしてしまうと、処理がエラーしてしまいます。

Googleドライブにファイル保存エラーを防止するために、使用している保存容量を取得し、使用率を確認する方法を解説します。

GASでGoogleドライブにファイル保存

Google Apps Script(GAS)はグーグルが提供するサービスとの連携がしやすいスクリプトサービスです。

その中でも、Googleドライブを使うと、色々なデータの保存先に利用できます。

他にもクラウドストレージサービスでAPI利用できるものもありますが、GASではGoogleドライブが圧倒的に使いやすいです。

GoogleドライブにGASのデータを蓄積したり、ログファイルの保存先に活用できます。

Googleドライブを多用すると、容量オーバーに

ただ、GoogleドライブをGoogle Apps Script(GAS)で利用する際に注意したい点があります。

それはGoogleドライブの保存容量です。

無料のGoogleアカウントでは、1アカウントあたり15GBが割り当てられています。

15GBもあるので、使い切るのはなかなか難しいです。

しかし、上限をオーバーしてしまうと、GASでGoogleドライブにファイル保存しようとしてもエラーしてしまいます。

特にログデータなどをGoogleドライブに出力すると、年月とともに使用容量が上限に達することがあります。

そのため、GASでGoogleドライブのエラーを起こさないスクリプトにするには、使用容量を注意を払うことが求められます。

保存容量を取得するgetStorageUsedメソッド

Google Apps Script(GAS)のGoogleドライブを操作するDriveAppというオブジェクトが用意されています。

そのDriveAppオブジェクトでGoogleドライブの使用容量を取得するメソッドとして、getStorageUsedがあります。

DriveApp.getStorageUsed()

getStorageUsedには引数を設定する必要はありません。

実行すると、戻り値として、Googleドライブの容量をNumber型変数で取得できます。

Googleドライブの保存容量をログ出力するサンプルコード

実際にGoogle Apps Script(GAS)でDriveApp.getStorageUsedメソッドを使ってGoogleドライブの使用容量を取得するサンプルコードを解説します。

function myFunction() {
  //Googleドライブの使用容量を取得して定数に保存
  const usedSize = DriveApp.getStorageUsed();
  //取得したGoogleドライブの使用容量をログ出力(バイト表示)
  console.log(usedSize);
  //Googleドライブの使用容量の単位をGBにしてログ出力
  console.log(usedSize/1024/1024/1024);
}

まず、DriveApp.getStorageUsedでGoogleドライブの使用容量を取得します。

そのまま単位がバイトの場合と、10243で割り算したGB単位に変換した使用容量をログ出力します。

実際にGASサンプルコードを実行すると、実行ログにGoogleドライブの使用容量が表示されます。

このように、Googleドライブの使用容量をGASで確認できます。

取得した数値をif文などで条件分岐を使うことで、容量オーバーで保存エラーを防いだり、アラートを送ることができます。

まとめ・終わりに

今回、Google Apps Script(GAS)でGoogleドライブの使用容量を取得する方法を紹介しました。

GASにはDriveApp.getStorageUsedメソッドが用意されており、実行アカウントのGoogleドライブの使用容量を確認できます。

GASでGoogleドライブにファイル保存するスクリプトを稼働させていると、無料アカウントの上限15GBに達してしまうこともあります。

GoogleドライブをGASの保存先として多用している場合には、残り容量をチェックする仕組みを用意しましょう。