Datadogタグ付け戦略
Datadogの真の力は、バラバラのデータ(メトリクス、ログ、トレース)を「タグ」によって一つに繋ぎ合わせることにあります。タグを適切に設計することで、インフラの問題から関連するアプリケーションのログへ、あるいはパフォーマンス低下から特定のソフトウェアバージョンへと瞬時にドリルダウンできるようになります。
特にDatadogが推奨する統合サービスダグ (Unified Service Tagging) は、オブザーバビリティを実現するための「背骨」となる概念です。
統合サービスダグ (Unified Service Tagging) とは
統合サービスダグとは、プラットフォーム全体で共通して使用すべき3つの標準タグのことです。これらを全てのテレメトリデータに付与することで、各機能間の連携が自動的に強化されます。
推奨される3つのタグ
env(環境): アプリケーションが動作している環境(例:prod,staging,dev)。service(サービス): アプリケーションやシステムの論理的な名前(例:orders-api,user-db)。version(バージョン): 展開されているコードのバージョン(例:v1.2.3,commit_sha)。
導入のメリット
- シームレスな遷移: APMのトレースから、そのリクエストを処理した特定のログへ、タグを意識することなく遷移できます。
- 相関分析: 新しいバージョンのデプロイ直後にエラーレートが上昇した場合、
versionタグにより原因を即座に特定できます。 - 一貫したフィルタリング: ダッシュボードのテンプレート変数にこれらのタグを使用することで、環境全体を一元的に切り替えて表示できます。
タグの種類と命名規則
タグの種類
- 予約済みタグ:
host,device,source,service,env,versionなど。これらはDatadog内部の機能(ログのグループ化やAPM連携)で予約された意味を持ちます。 - カスタムタグ: 組織固有の属性(例:
team,business_unit,cost_center)。
命名規則のベストプラクティス
タグを効果的に使うための「黄金律」は以下の通りです。
- 小文字を使用する: タグは英小文字で記述します。大文字小文字を混ぜると、予期せぬグループ化の失敗を招く可能性があります。
- スペースの代わりにアンダースコア (
_): スペースや特殊文字は避け、単語の区切りにはアンダースコアを使用します。 - キー:値の形式: タグは常に
key:valueのペアで記述します(例:role:webserver)。 - アルファベットから始める: キーは、数字ではなくアルファベットで始める必要があります。
タグの付与方法
タグは多層的なレベルで付与できます。上位で設定されたタグは下位に自動的に適用されるため、戦略的な設定が重要です。
- エージェントレベル:
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