背景
Datadog を使い始めてまだ間もないですが、ログを転送しておけばささっと可視化できてとても便利です。
ただ、Datadog 上では最長でもログ保持期間が 60日ということで、
ログ解析する対象期間が長くなるとアーカイブしてリハイドレイトするなどの運用が必要となってきます。
可視化する場合はというと、Log Events によるグラフ化もやはりログ保持期間に依存するため、最長 60日のグラフとなってしまいます。
そこで、
去年の同時期と比較したいなど、長期で可視化したい場合はログベースのメトリック (15ヶ月間保持) にしておくことをおすすめします。
ログベースのメトリック作成
前提
- ログ保持期間は 7日間で契約中
- 例として、Datadog へ転送された JVM GC ログのメトリックを作成
- 当 GC ログは Datadog Agent 側で FullGC 行のみをフィルタし、service_name タグにサービス名をマッピングして転送
メトリック作成
- Logs > Generate Metrics > New Metric (or [Add a new metric])
- クエリは、Log Explorer で検索するクエリと同等
- group by (DIMENSIONS) にはグラフ化する際に付加するタグを記述
クエリでガサっと取得したログをホスト単位やサービス単位で分割する際のキー設定のようなイメージ
※クエリ作成後の変更は可能だが、過去に取得した値には適用できないので注意
作成したメトリックの確認
-
Generate Metrics 画面で、作成したメトリックをフォーカスし、Metric Explorer (下記赤丸) で開く
-
- ログ保持期間に依存していない (上記例のメトリックは 3週間前に作成)
- メトリック作成時に DIMENSIONS 設定しておいた service_name をスコープとし
さらに DIMENSIONS 設定しておいた host ごとに値が入ったメトリックが作成された
グラフ化
あとは作成されたログベースのメトリックをダッシュボード上で通常通りグラフ化して完了