Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengekspor metrik aplikasi ke Amazon CloudWatch
Amazon ECS di Fargate mendukung pengekspor metrik aplikasi kustom Anda ke Amazon CloudWatch sebagai metrik khusus. Ini dilakukan dengan menambahkan AWS Distro untuk wadah OpenTelemetry sidecar ke definisi tugas Anda. Konsol Amazon ECS menyederhanakan proses ini dengan menambahkan opsi Gunakan pengumpulan metrik saat membuat definisi tugas baru. Untuk informasi selengkapnya, lihat Membuat definisi tugas Amazon ECS menggunakan konsol.
Metrik aplikasi diekspor ke CloudWatch Log dengan nama grup log /aws/ecs/application/metrics dan metrik dapat dilihat di ECS/AWSOTel/Application namespace. Aplikasi Anda harus diinstrumentasi dengan OpenTelemetry SDK. Untuk informasi lebih lanjut, lihat Pengantar AWS Distro untuk OpenTelemetry
Pertimbangan-pertimbangan
Berikut ini harus dipertimbangkan saat menggunakan integrasi Amazon ECS pada Fargate dengan AWS Distro untuk mengirim metrik aplikasi OpenTelemetry ke Amazon. CloudWatch
-
Integrasi ini hanya mengirimkan metrik aplikasi kustom Anda ke CloudWatch. Jika Anda menginginkan metrik tingkat tugas, Anda dapat mengaktifkan Wawasan Kontainer di konfigurasi cluster Amazon ECS. Untuk informasi selengkapnya, lihat Pantau kontainer Amazon ECS menggunakan Container Insights dengan pengamatan yang ditingkatkan.
-
AWS Distro untuk OpenTelemetry integrasi didukung untuk beban kerja Amazon ECS yang dihosting di Fargate dan beban kerja Amazon ECS yang dihosting di instans Amazon EC2. Instans eksternal saat ini tidak didukung.
-
CloudWatch mendukung maksimal 30 dimensi per metrik. Secara default, Amazon ECS secara default menyertakan,
TaskARN,,ClusterARNLaunchTypeTaskDefinitionFamily, danTaskDefinitionRevisiondimensi ke metrik. Sisa 25 dimensi dapat ditentukan oleh aplikasi Anda. Jika lebih dari 30 dimensi dikonfigurasi, tidak CloudWatch dapat menampilkannya. Ketika ini terjadi, metrik aplikasi akan muncul di namespaceECS/AWSOTel/ApplicationCloudWatch metrik tetapi tanpa dimensi apa pun. Anda dapat instrumen aplikasi Anda untuk menambahkan dimensi tambahan. Untuk informasi selengkapnya, lihat Menggunakan CloudWatch metrik dengan AWS Distro untuk OpenTelemetrydi AWS Distro untuk OpenTelemetry dokumentasi.
Diperlukan izin IAM untuk AWS Distro untuk OpenTelemetry integrasi dengan Amazon CloudWatch
Integrasi Amazon ECS dengan AWS Distro for OpenTelemetry mengharuskan Anda membuat peran IAM tugas dan menentukan peran dalam definisi tugas Anda. Kami menyarankan agar AWS Distro untuk OpenTelemetry sidecar juga dikonfigurasi untuk merutekan log kontainer ke CloudWatch Log yang memerlukan peran IAM eksekusi tugas dibuat dan ditentukan dalam definisi tugas Anda juga. Konsol Amazon ECS menangani peran IAM eksekusi tugas atas nama Anda, tetapi peran IAM tugas harus dibuat secara manual dan ditambahkan ke definisi tugas Anda. Untuk informasi selengkapnya tentang peran IAM eksekusi tugas, lihatPeran IAM pelaksanaan tugas Amazon ECS.
penting
Jika Anda juga mengumpulkan data pelacakan aplikasi menggunakan AWS Distro untuk OpenTelemetry integrasi, pastikan peran IAM tugas Anda juga berisi izin yang diperlukan untuk integrasi tersebut. Untuk informasi selengkapnya, lihat Identifikasi peluang pengoptimalan Amazon ECS menggunakan data pelacakan aplikasi.
Jika aplikasi Anda memerlukan izin tambahan, Anda harus menambahkannya ke kebijakan ini. Setiap definisi tugas hanya dapat menentukan satu peran IAM tugas. Misalnya, jika Anda menggunakan file konfigurasi khusus yang disimpan di Manajer Sistem, Anda harus menambahkan ssm:GetParameters izin ke kebijakan IAM ini.
Untuk membuat peran layanan untuk Elastic Container Service (konsol IAM)
Masuk ke Konsol Manajemen AWS dan buka konsol IAM di https://console.aws.amazon.com/iam/
. -
Di panel navigasi konsol IAM, pilih Peran, dan lalu pilih Buat peran.
-
Untuk Ti pe entitas tepercaya, pilih Layanan AWS.
-
Untuk Service atau use case, pilih Elastic Container Service, lalu pilih kasus penggunaan Elastic Container Service Task.
-
Pilih Berikutnya.
-
Di bagian Tam bah izin, cari AWSDistroOpenTelemetryPolicyForXray, lalu pilih kebijakan.
-
(Opsional) Tetapkan batas izin. Ini adalah fitur lanjutan yang tersedia untuk peran layanan, tetapi bukan peran tertaut layanan.
-
Buka bagian Tetapkan batas izin, lalu pilih Gunakan batas izin untuk mengontrol izin peran maksimum.
IAM menyertakan daftar kebijakan yang AWS dikelola dan dikelola pelanggan di akun Anda.
Pilih kebijakan yang akan digunakan untuk batas izin.
-
-
Pilih Berikutnya.
-
Masukkan nama peran atau akhiran nama peran untuk membantu Anda mengidentifikasi tujuan peran.
penting
Saat Anda memberi nama peran, perhatikan hal berikut:
-
Nama peran harus unik dalam nama Anda Akun AWS, dan tidak dapat dibuat unik berdasarkan kasus.
Misalnya, jangan membuat peran bernama keduanya
PRODROLEdanprodrole. Ketika nama peran digunakan dalam kebijakan atau sebagai bagian dari ARN, nama peran tersebut peka huruf besar/kecil, namun ketika nama peran muncul kepada pelanggan di konsol, seperti selama proses masuk, nama peran tidak peka huruf besar/kecil. -
Anda tidak dapat mengedit nama peran setelah dibuat karena entitas lain mungkin mereferensikan peran tersebut.
-
-
(Opsional) Untuk Deskripsi, masukkan deskripsi untuk peran.
-
(Opsional) Untuk mengedit kasus penggunaan dan izin untuk peran, di bagian Langkah 1: Pilih entitas tepercaya atau Langkah 2: Tambahkan izin, pilih Edit.
-
(Opsional) Untuk membantu mengidentifikasi, mengatur, atau mencari peran, tambahkan tag sebagai pasangan kunci-nilai. Untuk informasi selengkapnya tentang menggunakan tag di IAM, lihat Tag untuk AWS Identity and Access Management sumber daya di Panduan Pengguna IAM.
-
Tinjau peran lalu pilih Buat peran.
Menentukan AWS Distro untuk OpenTelemetry sidecar dalam definisi tugas Anda
Konsol Amazon ECS menyederhanakan pengalaman membuat AWS Distro untuk wadah OpenTelemetry sidecar dengan menggunakan opsi Gunakan pengumpulan metrik. Untuk informasi selengkapnya, lihat Membuat definisi tugas Amazon ECS menggunakan konsol.
Jika Anda tidak menggunakan konsol Amazon ECS, Anda dapat menambahkan AWS Distro for OpenTelemetry sidecar container ke definisi tugas secara manual. Contoh definisi tugas berikut menunjukkan definisi wadah untuk menambahkan AWS Distro untuk OpenTelemetry sidecar untuk integrasi Amazon. CloudWatch
{ "family": "otel-using-cloudwatch", "taskRoleArn": "arn:aws:iam::111122223333:role/AmazonECS_OpenTelemetryCloudWatchRole", "executionRoleArn": "arn:aws:iam::111122223333:role/ecsTaskExecutionRole", "containerDefinitions": [ { "name": "aws-otel-emitter", "image": "application-image", "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-create-group": "true", "awslogs-group": "/ecs/aws-otel-emitter", "awslogs-region": "us-east-1", "awslogs-stream-prefix": "ecs" } }, "dependsOn": [{ "containerName": "aws-otel-collector", "condition": "START" }] }, { "name": "aws-otel-collector", "image": "public.ecr.aws/aws-observability/aws-otel-collector:v0.30.0", "essential": true, "command": [ "--config=/etc/ecs/ecs-cloudwatch.yaml" ], "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-create-group": "True", "awslogs-group": "/ecs/ecs-aws-otel-sidecar-collector", "awslogs-region": "us-east-1", "awslogs-stream-prefix": "ecs" } } } ], "networkMode": "awsvpc", "requiresCompatibilities": [ "FARGATE" ], "cpu": "1024", "memory": "3072" }