Datadogタグ付け戦略 ​

Datadogの真の力は、バラバラのデータ(メトリクス、ログ、トレース)を「タグ」によって一つに繋ぎ合わせることにあります。タグを適切に設計することで、インフラの問題から関連するアプリケーションのログへ、あるいはパフォーマンス低下から特定のソフトウェアバージョンへと瞬時にドリルダウンできるようになります。

特にDatadogが推奨する統合サービスダグ (Unified Service Tagging) は、オブザーバビリティを実現するための「背骨」となる概念です。

統合サービスダグ (Unified Service Tagging) とは ​

統合サービスダグとは、プラットフォーム全体で共通して使用すべき3つの標準タグのことです。これらを全てのテレメトリデータに付与することで、各機能間の連携が自動的に強化されます。

推奨される3つのタグ ​

  1. env (環境): アプリケーションが動作している環境(例: prod, staging, dev)。
  2. service (サービス): アプリケーションやシステムの論理的な名前(例: orders-api, user-db)。
  3. version (バージョン): 展開されているコードのバージョン(例: v1.2.3, commit_sha)。

導入のメリット ​

  • シームレスな遷移: APMのトレースから、そのリクエストを処理した特定のログへ、タグを意識することなく遷移できます。
  • 相関分析: 新しいバージョンのデプロイ直後にエラーレートが上昇した場合、version タグにより原因を即座に特定できます。
  • 一貫したフィルタリング: ダッシュボードのテンプレート変数にこれらのタグを使用することで、環境全体を一元的に切り替えて表示できます。

タグの種類と命名規則 ​

タグの種類 ​

  • 予約済みタグ: host, device, source, service, env, version など。これらはDatadog内部の機能(ログのグループ化やAPM連携)で予約された意味を持ちます。
  • カスタムタグ: 組織固有の属性(例: team, business_unit, cost_center)。

命名規則のベストプラクティス ​

タグを効果的に使うための「黄金律」は以下の通りです。

  1. 小文字を使用する: タグは英小文字で記述します。大文字小文字を混ぜると、予期せぬグループ化の失敗を招く可能性があります。
  2. スペースの代わりにアンダースコア (_): スペースや特殊文字は避け、単語の区切りにはアンダースコアを使用します。
  3. キー:値の形式: タグは常に key:value のペアで記述します(例: role:webserver)。
  4. アルファベットから始める: キーは、数字ではなくアルファベットで始める必要があります。

タグの付与方法 ​

タグは多層的なレベルで付与できます。上位で設定されたタグは下位に自動的に適用されるため、戦略的な設定が重要です。

  • エージェントレベル: datadog.yaml の tags セクションに記述。そのエージェントから送信される全てのデータに付与されます。
  • 環境変数レベル (Container/K8s): DD_TAGS, DD_ENV, DD_SERVICE, DD_VERSION などの環境変数を使用。
  • クラウドインテグレーション: AWS/GCP/Azureのリソースに付与されたタグを、Datadog側で自動的に取り込みます。

まとめ ​

タグは単なるラベルではなく、Datadogにおける「情報の共通言語」です。 これから監視を始める、あるいは見直す場合は、まず「統合サービスダグ」を全てのサービスに正しく付与することから始めましょう。それだけで、Datadogの分析能力は数倍に跳ね上がります。


出典: Datadog Docs - Unified Service Tagging出典: Datadog Docs - Getting Started with Tagging