AWS X-Ray SDKuntuk Python - AWS X-Ray

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWS X-Ray SDKuntuk Python

X-Ray SDK untuk Python adalah perpustakaan untuk aplikasi web Python yang menyediakan kelas dan metode untuk menghasilkan dan mengirim data jejak ke daemon X-Ray. Data pelacakan mencakup informasi tentang HTTP permintaan masuk yang dilayani oleh aplikasi, dan panggilan yang dilakukan aplikasi ke layanan hilir menggunakan AWS SDK, HTTP klien, atau konektor SQL database. Anda juga dapat membuat segmen secara manual dan menambahkan informasi debug dalam anotasi dan metadata.

Anda dapat mengunduh SDK denganpip.

$ pip install aws-xray-sdk
catatan

X-Ray SDK untuk Python adalah proyek open source. Anda dapat mengikuti proyek dan mengirimkan masalah dan menarik permintaan di GitHub: github.com/aws/ aws-xray-sdk-python

Jika Anda menggunakan Django atau Flask, mulailah dengan menambahkan SDK middleware ke aplikasi Anda untuk melacak permintaan masuk. middleware menciptakan segmen untuk setiap permintaan yang dilacak, dan melengkapi segmen ketika respons dikirim. Saat segmen terbuka, Anda dapat menggunakan metode SDK klien untuk menambahkan informasi ke segmen dan membuat subsegmen untuk melacak panggilan hilir. Ini SDK juga secara otomatis mencatat pengecualian yang dilemparkan aplikasi Anda saat segmen terbuka. Untuk aplikasi lain, Anda dapat buat segmen secara manual.

Untuk fungsi Lambda yang disebut oleh aplikasi atau layanan yang diinstrumentasi, Lambda membaca tracing header dan pelacakan sampel permintaan secara otomatis. Untuk fungsi lainnya, Anda dapat mengonfigurasi Lambda untuk sampel dan pelacakan permintaan masuk. Dalam kedua kasus, Lambda menciptakan segmen dan menyediakannya ke X-Ray. SDK

catatan

Pada Lambda, SDK X-Ray adalah opsional. Jika Anda tidak menggunakannya dalam fungsi Anda, peta layanan Anda masih akan menyertakan simpul untuk layanan Lambda, dan satu untuk setiap fungsi Lambda. Dengan menambahkanSDK, Anda dapat menginstruksikan kode fungsi Anda untuk menambahkan subsegmen ke segmen fungsi yang direkam oleh Lambda. Lihat AWS Lambda dan AWS X-Ray untuk informasi selengkapnya.

Lihat Pekerja untuk contoh fungsi Python yang diinstrumentasikan di Lambda.

Selanjutnya, gunakan X-Ray SDK untuk Python untuk instrumen panggilan hilir dengan menambal library aplikasi Anda. SDKMendukung pustaka berikut.

Pustaka yang didukung

Setiap kali aplikasi Anda membuat panggilan ke AWS, SQL database, atau HTTP layanan lainnya, SDK mencatat informasi tentang panggilan dalam subsegmen. Layanan AWS dan sumber daya yang Anda akses dalam layanan muncul sebagai node hilir pada peta jejak untuk membantu Anda mengidentifikasi kesalahan dan masalah pembatasan pada koneksi individual.

Setelah Anda mulai menggunakanSDK, sesuaikan perilakunya dengan mengonfigurasi perekam dan middleware. Anda dapat menambahkan plugin untuk merekam data tentang sumber daya komputasi yang menjalankan aplikasi Anda, menyesuaikan perilaku pengambilan sampel dengan menentukan aturan pengambilan sampel, dan mengatur tingkat log untuk melihat lebih banyak atau lebih sedikit informasi dari log aplikasi Anda. SDK

Catat informasi tambahan tentang permintaan dan pekerjaan yang dilakukan aplikasi Anda dalam anotasi dan metadata. Anotasi adalah pasangan kunci-nilai sederhana yang diindeks untuk digunakan dengan ekspresi filter, sehingga Anda dapat mencari pelacakan yang berisi data tertentu. Entri metadata kurang membatasi dan dapat merekam seluruh objek dan array — apa pun yang dapat diserialisasikan. JSON

Anotasi dan Metadata

Anotasi dan metadata adalah teks arbitrer yang Anda tambahkan ke segmen dengan X-Ray. SDK Anotasi diindekskan untuk digunakan dengan Ekspresi filter. Metadata tidak diindeks, tetapi dapat dilihat di segmen mentah dengan konsol X-Ray atau. API Siapa pun yang Anda berikan akses baca ke X-Ray dapat melihat data ini.

Bila Anda memiliki banyak klien diinstrumentasi dalam kode Anda, segmen permintaan tunggal dapat berisi sejumlah besar subsegmen, satu untuk setiap panggilan yang dilakukan dengan klien yang diinstrumentasi. Anda dapat mengatur dan grup subsegmen dengan membungkus panggilan klien di subsegmen kustom. Anda dapat membuat subsegmen kustom untuk seluruh fungsi atau bagian kode apa pun. Anda kemudian dapat mencatat metadata dan anotasi pada subsegmen bukan menulis segala sesuatu pada segmen induk.

Untuk dokumentasi referensi untuk kelas dan metode, lihat Referensi Python AWS X-Ray SDK API untuk. SDK

Persyaratan

X-Ray SDK untuk Python mendukung versi bahasa dan pustaka berikut.

  • Python – 2.7, 3.4, dan yang lebih baru

  • Django – 1.10 dan yang lebih baru

  • Flask – 0.10 dan yang lebih baru

  • aiohttp – 2.3.0 dan versi terbaru

  • AWS SDK for Python (Boto) – 1.4.0 dan yang lebih baru

  • botocore – 1.5.0 dan yang lebih baru

  • enum – 0.4.7 dan yang lebih baru, untuk Python versi 3.4.0 dan yang lebih lama

  • jsonpickle – 1.0.0 dan yang lebih baru

  • setuptools – 40.6.3 dan yang lebih baru

  • wrapt – 1.11.0 dan yang lebih baru

Manajemen dependensi

X-Ray SDK untuk Python tersedia dari. pip

  • Package - aws-xray-sdk

Tambahkan SDK sebagai dependensi dalam requirements.txt file Anda.

contoh requirements.txt
aws-xray-sdk==2.4.2 boto3==1.4.4 botocore==1.5.55 Django==1.11.3

Jika Anda menggunakan Elastic Beanstalk untuk men-deploy aplikasi Anda, Elastic Beanstalk menginstal semua paket di requirements.txt secara otomatis.