

# アプリケーショントレースデータを使用して Amazon ECS 最適化の機会を特定する
<a name="trace-data"></a>

Amazon ECS は OpenTelemetry 用 AWS Distro と統合して、アプリケーションからトレースデータを収集します。Amazon ECS は OpenTelemetry サイドカーコンテナ用の AWS Distroを使用して、トレースデータを収集し、AWS X-Ray にルーティングします。詳細については、「[Amazon ECS の OpenTelemetry Collector 用 AWS Distro の設定](https://aws-otel.github.io/docs/setup/ecs)」を参照してください。そして、AWS X-Ray を使用してエラーや例外の特定、パフォーマンスのボトルネックや応答時間の分析を行うことができます。

OpenTelemetry Collector 用 AWS Distro がトレースデータを AWS X-Ray に送信するため、アプリケーションがトレースデータを作成できるように設定する必要があります。詳細については、「[AWS X-Rayデベロッパーガイド](https://docs.aws.amazon.com/xray/latest/devguide/xray-instrumenting-your-app.html)」の「*AWS X-Ray用にアプリケーションを計測する*」を参照してください。

## AWS X-Ray を使用した AWS Distro for OpenTelemetry の統合に必要な IAM 権限
<a name="trace-data-iam"></a>

Amazon ECS と AWS Distro for OpenTelemetry の統合には、タスク用のロールを作成し、タスク定義でそのロールを指定する必要があります。コンテナログが CloudWatch Logs にルーティングされるように AWS Distro for OpenTelemetry サイドカーを設定することをお勧めします。

**重要**  
AWS Distro for OpenTelemetry 統合を使用してアプリケーションメトリクスの収集も行う場合は、タスク用の IAM ロールに、その統合に必要な権限も含まれている必要があります。詳細については、「[アプリケーションメトリクスを使用して Amazon ECS アプリケーションのパフォーマンスを相関させる](metrics-data.md)」を参照してください。

ロールを作成した後に、以下のアクセス許可でポリシーを作成し、ロールにアタッチします。
+ `logs:PutLogEvents`
+ `logs:CreateLogGroup`
+ `logs:CreateLogStream`
+ `logs:DescribeLogStreams`
+ `logs:DescribeLogGroups`
+ `logs:PutRetentionPolicy`
+ `xray:PutTraceSegments`
+ `xray:PutTelemetryRecords`
+ `xray:GetSamplingRules`
+ `xray:GetSamplingTargets`
+ `xray:GetSamplingStatisticSummaries`
+ `ssm:GetParameters`