昨日まで動いていたGASが今朝から止まった時に、最初に見る3か所

昨日まで動いていたGASが今朝から止まった時に、最初に見る3か所

記事
IT・テクノロジー
「昨日まで毎朝ちゃんと動いていたGASが、今朝から動いていない」
「前任者が作ったスクリプトで、中身は誰も分からない」

こういうご相談をいただくとき、原因は驚くほど同じ場所に集中しています。
慌ててコードを読み始める前に、まず次の3か所を確認してみてください。

■ 1. 実行時間が6分を超えていないか
GASには「1回の実行は6分まで」という上限があります。
作った当初はデータが少なくて1分で終わっていた処理が、
半年後にデータが増えて6分を超えると、途中で強制終了されます。

見分け方: 実行ログ(左メニューの「実行数」)に「Exceeded maximum execution time」と出ていれば、これです。
対処: 処理を分割するか、1行ずつ書き込んでいる箇所(appendRow)を、まとめて書き込む形(setValues)に変えるだけで、処理時間が10分の1以下になることがよくあります。

■ 2. トリガー(自動実行の設定)が生きているか
毎朝の自動実行は「トリガー」という設定で動いています。
このトリガーは、設定した人のアカウントに紐づいています。
つまり、その人が退職してアカウントが停止されると、トリガーごと止まります。
また、スクリプトの権限承認が期限切れになって止まることもあります。

見分け方: 左メニューの「トリガー」を開いて、一覧が空になっていないか、エラー通知が来ていないかを見てください。
対処: 現在の担当者のアカウントでトリガーを設定し直します。

■ 3. 連携先のサービスが仕様を変えていないか
スクリプト側は何も変えていないのに、連携先(Slack、LINE、Chatwork、外部API)が仕様を変えると止まります。
最近だとLINE Notifyの終了(2025年3月)で、LINEに通知していたスクリプトが一斉に止まりました。
APIのトークン(パスワードのようなもの)に有効期限があり、それが切れていることもあります。

見分け方: 実行ログに「401」「403」「404」といった数字が出ていれば、連携先側の変更か認証の期限切れです。
対処: 連携先の最新の仕様に合わせて、通知部分だけを書き換えます。

■ まとめ
・6分の上限(データが増えると必ず起きる)
・トリガーの持ち主とアカウント
・連携先の仕様変更・トークン期限

この3つで、体感では止まった原因の大半が説明できます。
「見てみたけど分からない」「直すより作り直したほうが早そう」という場合は、
エラー1件からお受けする修正サービスも出しています。
原因が特定できず修正できなかった場合は全額返金にしています。

「そもそも今の作り方で大丈夫か」を先に確認したい方は、実装前の診断からどうぞ。

サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す