☁️

Cloud Loggingの30日以上の保存が課金対象になるので対策ポイントのまとめ

2023/01/09に公開

結論

  • 大体のケースにおいてログは一年以上保存しないといけない
  • データを一年以上保存したいならCloud Storageを使う
  • それ以下ならCloud Loggingだけでいい

背景

Cloud Loggingの30日以上保存されたログデータが課金対象になります。

注: 2023 年 3 月 1 日以降、30 日を超えて保持されているログデータにはストレージ費用が適用されます。料金について詳しくは Cloud Logging の料金のサマリーをご覧ください。2023 年 3 月 1 日までは、30 日を超えるログの保持に料金がかかりません。

https://cloud.google.com/stackdriver/pricing?hl=ja#logging-costs

困ったポイント

なるべく料金を抑えるために、普段調査でログの検索が必要な期間以上のデータはCloud Storageに保存だけしておけば良いのですが、Cloud Storageには様々なClassがあり、結局どれを使えば良いのか分かるまでに時間がかかりました。

この記事ではCloud LoggingとCloud Storageを使ってログデータを保存する構成を検討するための判断ポイントをまとめます。

判断ポイント

ログを残したい期間は大体一年以上

アプリケーションが守るべきセキュリティポリシーでは、大抵一年以上のアプリケーションログの保存は最低でも求められることが多いと思います。

Cloud Storageの料金を考える上では、1年以下の保存については全く考えなくていいというのがポイントになります。

データを一年以上保存する前提で料金の整理

ログは最低でも1年以上保存するので、それ以下のものについては考えなくて良いとします。
Cloud Storageには、色々なストレージクラスが存在し、最小保存期間があります。

  • Standard: なし
  • Nearline: 30日
  • Coldline: 90日
  • Archive: 365日

最小保存期間内にデータが削除されたとしても、最小保存期間データが保存されたのと同じ料金が発生します。
つまりアプリケーションログを保存する目的ではArchive Class以外のことについては全く考える必要がありません。

データを一年以上保存したいなら、Cloud Sotrageに転送する

Cloud LoggingとCloud Storage Archive Classの料金はTokyoで以下のようになっているので、データを一年以上保存したいなら、Cloud Storageに保存した方がお得だが、一年しか保存しないならCloud Loggingだけで運用した方が安いことになります。

  • Cloud Loggingの料金: $0.01/GiB/month
  • Cloud Storage Archive Classの料金: $0.0025/GiB/month

Log sinkの設定

Cloud Logging → Cloud Storageにデータ転送する場合はLogs Sinkという機能を使えます。

https://cloud.google.com/logging/docs/export/configure_export_v2?hl=ja

気をつけるポイント

Cloud Loggingの保存期間をすぐに短くしてしまうと、一年間のログは保存しておく、などのセキュリティポリシーが満たせなくなる時があるので注意してください。

例えば2年間Cloud Loggingでログを保持していて、Cloud Logging → Cloud Storageの転送設定を実装後にすぐにCloud Loggingのデータ保持期間を30日などにしてしまうと一年間のログが保持されていないことになってしまいます。

なので設定後一年はCloud Loggingのデータ保持期間は一年にしておいて、一年経ったらデータ保持期間を30日にするなどの対応が必要です。

まとめ

  • 大体のケースにおいてログは一年以上保存しないといけない
  • データを一年以上保存したいならCloud Storageを使う
  • それ以下ならCloud Loggingだけでいい
  • Cloud Loggingのデータ保持期間を短くするタイミングは気をつける

Discussion