お金の事故
クラウドやAPIの多くは従量課金です。使った分だけ後から請求される仕組みで、事故は「使いすぎる」ことではなく「使っていることに気づかない」ことで起きます。
従量課金の理屈
月額固定のサービスは、どれだけ使っても金額が変わりません。従量課金は、リクエストの回数、保存した量、生成した文字数といった実測に単価を掛けて、後から請求が確定します。小さく始められるのはこの仕組みのおかげで、悪いものではありません。知っておくべきは一点だけです。止める仕組みを自分で設定しない限り、誰も止めてくれません。
事故の型
- 繰り返し処理の中にAPI呼び出しが入り、バグや再試行で暴走する。1回数円の呼び出しでも、無限ループは請求の桁を変える
- 開発や自動テストが本物の有料APIを叩き続ける。モック(本物の外部サービスの置き換え。モック)にしていなければ、テストの実行回数だけ課金される
- 漏れたAPIキーを他人に使われる。請求はキーの持ち主に来る(トークン・APIキー)
- 使い終わったリソースの消し忘れ。保存されたままのデータや常駐する仕組みは、触らなくても静かに課金され続ける
公開前に、費用の発生場所を一覧にする
弊社では、公開の前に、どこから費用が発生し得るかを一覧にしてもらいます。ホスティング、データベース、外部APIのそれぞれで、無料枠の範囲と超えた時の単価を確認します。この調査はClaudeに任せられますが、料金は変わるため、金額の確定は各サービスの料金ページを正本にします。
プロンプトの例
この製品で費用が発生し得る場所を全部挙げて。無料枠の範囲と、超えた場合の課金の仕組みも
通知と停止を分けて設定する
弊社では、公開前に、使いすぎを知らせる通知と、課金対象の処理を止める仕組みを別々に確認します。「予算」や「上限」という名前でも、超過を知らせるだけの設定があります。例えばCloudflareの課金通知は、受信後に利用状況や設定を見直すためのもので、通知だけで処理が止まるわけではありません。
サービス側で自動停止できる場合は、何が止まり、どの利用分が対象になるかを確認して設定します。自動停止できない場合は、呼び出す側に期間ごとの回数や再試行の上限を持たせます。通知を受け取る担当者と不在時の連絡先、停止する操作も決めておきます。
開発中は有料APIをモックに置き換え、テスト用の鍵と本番の鍵を分けます(環境の分離)。
プロンプトの例
使っている外部サービスごとに、通知だけの設定と、自動で処理を止める設定を分けて調べて。
止められる対象、設定手順、通知後に手動で止める手順を教えて