サービス数がデータ量ガイドラインで指定されている数を超える場合は、サービスの命名規則について以下のベストプラクティスを試してみてください。
サービス名から環境タグの値を除外する
デフォルトでは、環境 (env
) は Datadog APM のプライマリタグになります。
サービスは通常、prod
、staging
、dev
などの複数の環境にデプロイされます。リクエスト数、レイテンシー、エラー率などのパフォーマンスメトリクスは、さまざまな環境間で異なっています。サービスカタログの環境ドロップダウンを使用すると、Performance タブのデータを特定の環境にスコープすることができます。
サービスの数が増えすぎて問題になりがちなのが、サービス名に環境値を含めるパターンです。例えば、prod-web-store
と dev-web-store
のように 2 つの環境で動作しているため、1 つではなく 2 つのユニークなサービスがある場合です。
Datadog では、サービス名を変更することでインスツルメンテーションを調整することを推奨しています。
トレースメトリクスはアンサンプリングされるため、インスツルメンテーションされたアプリケーションでは、部分的なデータではなく、すべてのデータが表示されます。また、ボリュームガイドラインも適用されます。
メトリクスパーティションを置いたり、変数をサービス名にグループ化する代わりに、第 2 プライマリタグを使用する
第 2 のプライマリタグは、トレースメトリクスのグループ化および集計に使用できる追加タグです。ドロップダウンを使用して、指定されたクラスター名またはデータセンターの値にパフォーマンスデータをスコープすることができます。
第 2 のプライマリタグを適用せず、サービス名にメトリクスパーティションやグループ化変数を含めると、アカウント内のユニークなサービス数が不必要に増加し、遅延やデータ損失の可能性があります。
例えば、サービス web-store
の代わりに、サービス web-store-us-1
、web-store-eu-1
、web-store-eu-2
という異なるインスタンス名を指定して、これらのパーティションのパフォーマンスメトリクスを並べて確認することができます。Datadog では、リージョン値 (us-1
、eu-1
、eu-2
) を 2 番目のプライマリタグとして実装することを推奨しています。