6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

datadogのログ管理機能で破産しそうになったので料金を1000分の1に抑えた

Last updated at Posted at 2022-06-01

ログ・インデックスとは?

Datadogのログ・インデックスは、アプリケーションから取り込んだログをインデックス化して様々な高度な検索、集計、パターン分析、監視等ができる機能です。

使いこなせればとても便利な機能です。

請求がきた

上記のログ・インデックスなんですが、油断すると飛んでもない料金を請求されるので注意が必要です。
もともと別のエンジニアがちょっと前にDatadogを導入し、最近自分が責任者を引き継いだ矢先、Datadogから飛んでもない額の請求が来ていることが発覚。その額なんと約30万円、、、

上記の額はもう確定済みでしたので致し方なしです。
請求の内訳としては、インフラストラクチャーや、APM(アプリケーション・パフォーマンス・マネジメント)といったプランにも入っていましたがこちらは1万円くらいで収まっていて、約29万円がログ・インデックスの請求でした。

もともとdatadogを導入したエンジニアは、月額1万くらいを想定していたようで会社としても月額30万円はかなりの痛手でした。
他人任せにせずBillingのページは常日頃から監視しておく、というのが今回の反省点ですね。。
導入したエンジニアはすでに退職していたので現責任者の自分がプランの見直しをする運びに。

解決策

Datadogのカスタマーサクセスに問い合わせたりして、以下の方針でいくことにしました。

  • 除外フィルター
  • ログのS3へのアーカイブ

ひとつひとつ簡単に解説していきます。

除外フィルター

アプリケーションから取り込まれたログは、datadog側で自動的に以下のステータスレベルで分類分けされます。
(もしかしたら、実際はもっとあるかもしれませんが、うちのサービスでは以下でした。)

  • error
  • warn
  • notice
  • info
  • ok

うちのサービスで発生しているログの99.9%以上をinfookで占めていました。
うちではinfookのログに関しては、そうそう分析することがなかったためインデックス化する(ログ・インデックス上で見れるようにする)必要ないという結論にいたりました。

そのような要件を叶える手段を調べた所、除外フィルターという機能を発見。
インデックス化する際にinfoなどは除外することでerrorwarnに分類されるログだけ、インデックス化することができました。
これで料金がほぼ1000分の1に!!

ログのS3へのアーカイブ

ただ、そうなると今後infoログも含めログ・インデックスで分析したいなーってなったときに、できないので良い方法はないかなと調べたところ、ログを圧縮してS3にアーカイブして、必要なときに必要な範囲のログをDatadogに取り込む(リハイドレート)という運用方法を発見。
さっそく導入しました。

手順

手順は公式通りやったら、割とあっさりできた。
大枠だけ記載する。

  • DatadogとAWSを統合

  • S3にアーカイブする設定 (上記のAWS統合を行っている前提となっています。)

S3へのPutObjectGetObjectのポリシーを設定する場所で、
jsonのなかのリソースのパスを設定する箇所で、/*を忘れがちなので注意

スクリーンショット 2022-05-13 10 56 34

うまくS3と連携ができると、1時間に1回くらいのペースでDatadogに圧縮されたログがアップロードされるようになります。

  • リハイドレート

S3上の圧縮されたログデータをDatadog上に取り込みます。
どのようなログを取り込みたいか、時間範囲の指定、statusの指定と細かい条件設定ができます。

おわりに

ログ・インデックスの料金を1/1000にすることができました。
ただし、正確にはリハイドレートのさいにかかる料金や、ログの100%インデックス化している場合免除されているログ取り込み機能(Ingested Log)の料金などが発生します。
前者はどれくらいリハイドレートするか次第です、後者はそんな大きな額ではないです。
正確なコストはカスタマーサクセスに問い合わせることを推奨いたします。

また今回は、infoログは常に見れなくて問題ないという条件でしたが、常に可視化しておいて、いろいろ分析に使いたいようなケースでは使えないかもしれないです。

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?