Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Instrumentasi aplikasi Anda untuk AWS X-Ray
Instrumentasi aplikasi Anda melibatkan pengiriman data jejak untuk permintaan masuk dan keluar dan peristiwa lain dalam aplikasi Anda, bersama dengan metadata tentang setiap permintaan. Ada beberapa opsi instrumentasi berbeda yang dapat Anda pilih atau gabungkan, berdasarkan kebutuhan khusus Anda:
-
Instrumentasi otomatis — instrumen aplikasi Anda dengan nol perubahan kode, biasanya melalui perubahan konfigurasi, menambahkan agen instrumentasi otomatis, atau mekanisme lainnya.
-
Instrumentasi pustaka — buat perubahan kode aplikasi minimal untuk menambahkan instrumentasi bawaan yang menargetkan pustaka atau kerangka kerja tertentu, seperti klien Apache, atau klien AWS SDK. HTTP SQL
-
Instrumentasi manual — tambahkan kode instrumentasi ke aplikasi Anda di setiap lokasi tempat Anda ingin mengirim informasi jejak.
Ada beberapa agenSDKs, dan alat yang dapat digunakan untuk instrumen aplikasi Anda untuk penelusuran X-Ray.
Topik
Menginstrumentasi aplikasi Anda dengan AWS Distro untuk OpenTelemetry
AWS Distro for OpenTelemetry (ADOT) adalah AWS distribusi berdasarkan OpenTelemetry proyek Cloud Native Computing Foundation (CNCF). OpenTelemetry menyediakan satu set open sourceAPIs, perpustakaan, dan agen untuk mengumpulkan jejak dan metrik terdistribusi. Toolkit ini adalah distribusi OpenTelemetry komponen hulu termasukSDKs, agen instrumentasi otomatis, dan kolektor yang diuji, dioptimalkan, diamankan, dan didukung oleh. AWS
DenganADOT, para insinyur dapat menginstruksikan aplikasi mereka sekali dan mengirim metrik dan jejak yang berkorelasi ke beberapa solusi AWS pemantauan termasuk Amazon CloudWatch, AWS X-Ray, dan Amazon OpenSearch Service.
Menggunakan ADOT X-Ray dengan membutuhkan dua komponen: OpenTelemetry SDKdiaktifkan untuk digunakan dengan X-Ray, dan AWS Distro untuk OpenTelemetry Kolektor diaktifkan untuk digunakan dengan X-Ray. Untuk informasi selengkapnya tentang menggunakan AWS Distro untuk OpenTelemetry with AWS X-Ray dan lainnya Layanan AWS, lihat AWS Distro untuk OpenTelemetry
Untuk informasi selengkapnya tentang dukungan dan penggunaan bahasa, lihat AWS Observabilitas di GitHub
catatan
Anda sekarang dapat menggunakan CloudWatch agen untuk mengumpulkan metrik, log, dan jejak dari EC2 instans Amazon dan server di lokasi. CloudWatch agen versi 1.300025.0 dan yang lebih baru dapat mengumpulkan jejak dari atau klien OpenTelemetryX-RaySDKs, dan mengirimkannya ke X-Ray. Menggunakan CloudWatch agen alih-alih AWS Distro for OpenTelemetry (ADOT) Collector atau daemon X-Ray untuk mengumpulkan jejak dapat membantu Anda mengurangi jumlah agen yang Anda kelola. Lihat topik CloudWatch agen di Panduan CloudWatch Pengguna untuk informasi selengkapnya.
ADOTtermasuk yang berikut:
ADOTsaat ini termasuk dukungan instrumentasi otomatis untuk Java
ADOTSDKsuntuk Java dan Go mendukung aturan pengambilan sampel terpusat X-Ray. Jika Anda memerlukan dukungan untuk aturan pengambilan sampel X-Ray dalam bahasa lain, pertimbangkan untuk menggunakan file AWS X-Ray SDK.
catatan
Anda dapat mengirim sekarang mengirim jejak W3C ke IDs X-Ray. Secara default, jejak yang dibuat dengan OpenTelemetry memiliki format ID jejak yang didasarkan pada spesifikasi W3C Trace Context
Menginstrumentasi aplikasi Anda dengan AWS X-Ray SDKs
AWS X-Ray termasuk satu set bahasa khusus SDKs untuk instrumentasi aplikasi Anda untuk mengirim jejak ke X-Ray. Setiap SDK X-Ray menyediakan yang berikut:
-
Pencegat untuk ditambahkan ke kode Anda untuk melacak permintaan yang masuk HTTP
-
Penangan klien ke AWS SDK klien instrumen yang digunakan aplikasi Anda untuk memanggil orang lain Layanan AWS
-
HTTPKlien ke panggilan instrumen ke layanan HTTP web internal dan eksternal lainnya
X-Ray SDKs juga mendukung panggilan instrumentasi ke SQL database, instrumentasi AWS SDK klien otomatis, dan fitur lainnya. Alih-alih mengirim data jejak langsung ke X-Ray, SDK mengirimkan dokumen JSON segmen ke proses daemon mendengarkan lalu lintas. UDP X-Ray Daemon menyangga segmen dalam antrean dan mengunggah segmen tersebut ke X-Ray dalam batch.
Khusus bahasa berikut disediakanSDKs:
X-Ray saat ini menyertakan dukungan instrumentasi otomatis untuk Java.
Memilih antara AWS Distro untuk OpenTelemetry dan X-Ray SDKs
Yang SDKs disertakan dengan X-Ray adalah bagian dari solusi instrumentasi terintegrasi yang ditawarkan oleh AWS. AWS Distro for OpenTelemetry adalah bagian dari solusi industri yang lebih luas di mana X-Ray hanyalah salah satu dari banyak solusi penelusuran. Anda dapat menerapkan end-to-end penelusuran di X-Ray menggunakan salah satu pendekatan, tetapi penting untuk memahami perbedaan untuk menentukan pendekatan yang paling berguna bagi Anda.
Kami merekomendasikan instrumentasi aplikasi Anda dengan AWS Distro untuk OpenTelemetry jika Anda membutuhkan yang berikut:
-
Kemampuan untuk mengirim jejak ke beberapa ujung belakang penelusuran yang berbeda tanpa harus menginstruksikan ulang kode Anda
-
Support untuk sejumlah besar instrumentasi perpustakaan untuk setiap bahasa, dikelola oleh komunitas OpenTelemetry
-
Lapisan Lambda yang dikelola sepenuhnya yang mengemas semua yang Anda butuhkan untuk mengumpulkan data telemetri, tanpa memerlukan perubahan kode saat menggunakan Java, Python, atau Node.js
catatan
AWS Distro for OpenTelemetry menawarkan pengalaman memulai yang lebih sederhana untuk menginstrumentasi fungsi Lambda Anda. Namun, karena OpenTelemetry penawaran fleksibilitas, fungsi Lambda Anda akan memerlukan memori tambahan dan pemanggilan mungkin mengalami peningkatan latensi start dingin, yang dapat menyebabkan biaya tambahan. Jika Anda mengoptimalkan latensi rendah dan tidak memerlukan OpenTelemetry kemampuan lanjutan seperti tujuan back end yang dapat dikonfigurasi secara dinamis, Anda mungkin ingin menggunakan AWS SDK X-Ray untuk instrumen aplikasi Anda.
Sebaiknya pilih X-Ray SDK untuk menginstrumentasi aplikasi Anda jika Anda membutuhkan yang berikut:
-
Solusi vendor tunggal yang terintegrasi erat
-
Integrasi dengan aturan sampling terpusat X-Ray, termasuk kemampuan untuk mengonfigurasi aturan pengambilan sampel dari konsol X-Ray dan secara otomatis menggunakannya di beberapa host, saat menggunakan Node.js, Python, Ruby, atau. NET