Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memantau aplikasi Anda menggunakan metrik Envoy
penting
Pemberitahuan akhir dukungan: Pada 30 September 2026, AWS akan menghentikan dukungan untuk. AWS App Mesh Setelah 30 September 2026, Anda tidak akan lagi dapat mengakses AWS App Mesh konsol atau AWS App Mesh sumber daya. Untuk informasi lebih lanjut, kunjungi posting blog ini Migrasi dari AWS App Mesh ke Amazon ECS Service Connect
Envoy mengklasifikasikan metriknya ke dalam kategori utama berikut:
-
Hilir —Metrik yang berhubungan dengan koneksi dan permintaan yang masuk ke proxy.
-
Upstream —Metrik yang berhubungan dengan koneksi keluar dan permintaan yang dibuat oleh proxy.
-
Server —Metrik yang menggambarkan keadaan internal utusan. Ini termasuk metrik seperti uptime atau memori yang dialokasikan.
Di App Mesh, proxy mencegat lalu lintas hulu dan hilir. Misalnya, permintaan yang diterima dari klien Anda serta permintaan yang dibuat oleh kontainer layanan Anda diklasifikasikan sebagai lalu lintas hilir oleh Utusan. Untuk membedakan antara berbagai jenis lalu lintas hulu dan hilir ini, App Mesh lebih lanjut mengkategorikan metrik Envoy tergantung pada arah lalu lintas relatif terhadap layanan Anda:
-
Ingress —Metrik dan sumber daya yang berkaitan dengan koneksi dan permintaan yang mengalir ke wadah layanan Anda.
-
Egress —Metrik dan sumber daya yang berkaitan dengan koneksi dan permintaan yang mengalir dari container layanan Anda dan akhirnya keluar dari ECS tugas Amazon atau pod Kubernetes Anda.
Gambar berikut menunjukkan komunikasi antara proxy dan kontainer layanan.
Konvensi penamaan sumber daya
Sangat berguna untuk memahami bagaimana Envoy melihat mesh Anda dan bagaimana sumber dayanya memetakan kembali ke sumber daya yang Anda tentukan di App Mesh. Ini adalah sumber daya Utusan utama yang dikonfigurasi App Mesh:
-
Pendengar —Alamat dan port yang didengarkan proxy untuk koneksi hilir. Pada gambar sebelumnya, App Mesh membuat pendengar ingress untuk lalu lintas yang masuk ke ECS tugas Amazon atau pod Kubernetes Anda dan pendengar jalan keluar untuk lalu lintas yang meninggalkan container layanan Anda.
-
Cluster —Grup bernama titik akhir hulu yang dihubungkan oleh proxy dan mengarahkan lalu lintas ke. Di App Mesh, wadah layanan Anda direpresentasikan sebagai klaster, serta semua node virtual lain yang dapat disambungkan oleh layanan Anda.
-
Rute —Ini sesuai dengan rute yang Anda tentukan di mesh Anda. Mereka berisi kondisi di mana proxy cocok dengan permintaan serta kluster target yang dikirimkan permintaan.
-
Endpoint dan tugas beban cluster —Alamat IP cluster hulu. AWS Cloud Map Saat menggunakan mekanisme penemuan layanan Anda untuk node virtual, App Mesh mengirimkan instance layanan yang ditemukan sebagai sumber daya titik akhir ke proxy Anda.
-
Rahasia —Ini termasuk, tetapi tidak terbatas pada, kunci enkripsi dan TLS sertifikat Anda. Saat menggunakan AWS Certificate Manager sebagai sumber untuk sertifikat klien dan server, App Mesh mengirimkan sertifikat publik dan pribadi ke proxy Anda sebagai sumber daya rahasia.
App Mesh menggunakan skema yang konsisten untuk memberi nama sumber daya Envoy yang dapat Anda gunakan untuk menghubungkan kembali ke mesh Anda.
Memahami skema penamaan untuk pendengar dan cluster penting dalam memahami metrik Envoy di App Mesh.
Nama pendengar
Pendengar diberi nama menggunakan format berikut:
lds_
<traffic direction>
_<listener IP address>
_<listening port>
Anda biasanya akan melihat pendengar berikut dikonfigurasi di Utusan:
-
lds_ingress_0.0.0.0_15000
-
lds_egress_0.0.0.0_15001
Dengan menggunakan CNI plugin Kubernetes atau aturan tabel IP, lalu lintas di ECS tugas Amazon atau pod Kubernetes diarahkan ke port dan. 15000
15001
App Mesh mengonfigurasi Envoy dengan dua pendengar ini untuk menerima lalu lintas masuk (masuk) dan keluar (keluar). Jika Anda tidak memiliki listener yang dikonfigurasi pada node virtual Anda, Anda seharusnya tidak melihat pendengar ingress.
Nama cluster
Sebagian besar cluster menggunakan format berikut:
cds_
<traffic direction>
_<mesh name>
_<virtual node name>
_<protocol>
_<port>
Node virtual yang berkomunikasi dengan layanan Anda masing-masing memiliki klaster mereka sendiri. Seperti disebutkan sebelumnya, App Mesh membuat cluster untuk layanan yang berjalan di sebelah Envoy sehingga proxy dapat mengirim lalu lintas masuk ke sana.
Misalnya, jika Anda memiliki node virtual bernama my-virtual-node
yang mendengarkan lalu lintas http pada port 8080
dan node virtual tersebut berada dalam mesh bernamamy-mesh
, App Mesh membuat cluster bernamacds_ingress_my-mesh_my-virtual-node_http_8080
. Cluster ini berfungsi sebagai tujuan untuk lalu lintas ke dalam my-virtual-node
wadah layanan.
App Mesh juga dapat membuat jenis cluster khusus tambahan berikut. Cluster lain ini tidak selalu sesuai dengan sumber daya yang Anda definisikan secara eksplisit di mesh Anda.
-
Cluster digunakan untuk menjangkau AWS layanan lain. Jenis ini memungkinkan mesh Anda menjangkau sebagian besar AWS layanan secara default:
cds_egress_
.<mesh name>
_amazonaws -
Cluster digunakan untuk melakukan routing untuk gateway virtual. Ini umumnya dapat diabaikan dengan aman:.
-
Untuk pendengar tunggal:
cds_ingress_
<mesh name>
_<virtual gateway name>
_self_redirect_<protocol>
_<port>
-
Untuk beberapa pendengar:
cds_ingress_
<mesh name>
_<virtual gateway name>
_self_redirect_<ingress_listener_port>
_<protocol>
_<port>
-
-
Cluster yang merupakan titik akhir yang dapat Anda tentukan, sepertiTLS, saat Anda mengambil rahasia menggunakan Envoy's Secret Discovery Service:.
static_cluster_sds_unix_socket
Contoh metrik aplikasi
Untuk mengilustrasikan metrik yang tersedia di Envoy, contoh aplikasi berikut memiliki tiga node virtual. Layanan virtual, router virtual, dan rute di mesh dapat diabaikan karena tidak tercermin dalam metrik Envoy. Dalam contoh ini, semua layanan mendengarkan lalu lintas http pada port 8080.
Sebaiknya tambahkan variabel lingkungan ENABLE_ENVOY_STATS_TAGS=1
ke container proxy Envoy yang berjalan di mesh Anda. Ini menambahkan dimensi metrik berikut ke semua metrik yang dipancarkan oleh proxy:
-
appmesh.mesh
-
appmesh.virtual_node
-
appmesh.virtual_gateway
Tag ini diatur ke nama mesh, node virtual, atau gateway virtual untuk memungkinkan metrik pemfilteran menggunakan nama sumber daya di mesh Anda.
Nama sumber daya
Proxy node virtual situs web memiliki sumber daya berikut:
-
Dua pendengar untuk lalu lintas masuk dan keluar:
-
lds_ingress_0.0.0.0_15000
-
lds_egress_0.0.0.0_15001
-
-
Dua cluster jalan keluar, mewakili dua ujung belakang simpul virtual:
-
cds_egress_online-store_product-details_http_8080
-
cds_egress_online-store_cart_http_8080
-
-
Kluster ingress untuk wadah layanan situs web:
-
cds_ingress_online-store_website_http_8080
-
Contoh metrik pendengar
-
listener.0.0.0.0_15000.downstream_cx_active
—Jumlah koneksi jaringan masuk aktif ke Utusan. -
listener.0.0.0.0_15001.downstream_cx_active
—Jumlah koneksi jaringan keluar aktif ke Utusan. Koneksi yang dibuat oleh aplikasi Anda ke layanan eksternal termasuk dalam hitungan ini. -
listener.0.0.0.0_15000.downstream_cx_total
—Jumlah total koneksi jaringan ingress ke Envoy. -
listener.0.0.0.0_15001.downstream_cx_total
—Jumlah total koneksi jaringan keluar ke Utusan.
Untuk set lengkap metrik pendengar, lihat Statistik
Contoh metrik cluster
-
cluster_manager.active_clusters
—Jumlah total cluster yang telah dibuat oleh Utusan setidaknya satu koneksi. -
cluster_manager.warming_clusters
—Jumlah total cluster yang belum terhubung dengan Utusan.
Metrik cluster berikut menggunakan format. cluster.<cluster
name>.<metric name>
Nama-nama metrik ini unik untuk contoh aplikasi dan dipancarkan oleh wadah Utusan situs web:
-
cluster.cds_egress_online-store_product-details_http_8080.upstream_cx_total
Jumlah total koneksi antara situs web dan detail produk. -
cluster.cds_egress_online-store_product-details_http_8080.upstream_cx_connect_fail
Jumlah total koneksi yang gagal antara situs web dan detail produk. -
cluster.cds_egress_online-store_product-details_http_8080.health_check.failure
Jumlah total pemeriksaan kesehatan yang gagal antara situs web dan detail produk. -
cluster.cds_egress_online-store_product-details_http_8080.upstream_rq_total
Jumlah total permintaan yang dibuat antara situs web dan detail produk. -
cluster.cds_egress_online-store_product-details_http_8080.upstream_rq_time
Waktu yang dibutuhkan oleh permintaan yang dibuat antara situs web dan detail produk. -
cluster.cds_egress_online-store_product-details_http_8080.upstream_rq_2xx
—Jumlah tanggapan HTTP 2xx yang diterima oleh situs web dari detail produk.
Untuk set lengkap HTTP metrik, lihat Statistik dalam dokumentasi
Metrik server manajemen
Envoy juga memancarkan metrik yang terkait dengan koneksinya ke bidang kontrol App Mesh, yang bertindak sebagai server manajemen Envoy. Kami menyarankan untuk memantau beberapa metrik ini sebagai cara untuk memberi tahu Anda ketika proxy Anda menjadi tidak sinkron dari bidang kontrol untuk waktu yang lama. Hilangnya konektivitas ke bidang kontrol atau pembaruan yang gagal mencegah proxy Anda menerima konfigurasi baru dari App Mesh, termasuk perubahan mesh yang dilakukan melalui App Mesh. APIs
-
control_plane.connected_state
—Metrik ini diatur ke 1 saat proxy terhubung ke App Mesh, jika tidak maka 0. -
*.update_rejected
—Jumlah total pembaruan konfigurasi yang ditolak oleh Utusan. Ini biasanya karena kesalahan konfigurasi pengguna. Misalnya, jika Anda mengonfigurasi App Mesh untuk membaca TLS sertifikat dari file yang tidak dapat dibaca oleh Envoy, pembaruan yang berisi jalur ke sertifikat tersebut akan ditolak.-
Untuk Listener yang diperbarui ditolak, statistiknya akan.
listener_manager.lds.update_rejected
-
Untuk Cluster yang diperbarui ditolak, statistiknya akan
cluster_manager.cds.update_rejected
.
-
-
*.update_success
—Jumlah pembaruan konfigurasi yang berhasil dibuat oleh App Mesh ke proxy Anda. Ini termasuk payload konfigurasi awal yang dikirim saat container Envoy baru dimulai.-
Untuk keberhasilan yang diperbarui Listener, statistiknya akan.
listener_manager.lds.update_success
-
Untuk keberhasilan yang diperbarui Cluster, statistiknya akan
cluster_manager.cds.update_success
.
-
Untuk kumpulan metrik server manajemen, lihat Server Manajemen dalam dokumentasi