Metrik yang dikumpulkan oleh Sinyal Aplikasi - Amazon CloudWatch

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

Metrik yang dikumpulkan oleh Sinyal Aplikasi

Sinyal Aplikasi mengumpulkan metrik aplikasi standar dan metrik runtime dari aplikasi yang Anda aktifkan.

Metrik aplikasi standar berhubungan dengan bagian paling penting dari kinerja layanan, latensi, dan ketersediaan.

Metrik runtime melacak metrik aplikasi dari waktu ke waktu, termasuk penggunaan memori, penggunaan CPU, dan pengumpulan sampah. Sinyal Aplikasi menampilkan metrik runtime dalam konteks layanan yang telah Anda aktifkan untuk Sinyal Aplikasi. Jika Anda memiliki masalah operasional, mengamati metrik runtime dapat berguna untuk membantu Anda menemukan akar penyebab masalah. Misalnya, Anda dapat melihat apakah lonjakan latensi di layanan terkait dengan lonjakan dalam metrik runtime.

Metrik aplikasi standar yang dikumpulkan

Sinyal Aplikasi mengumpulkan metrik aplikasi standar dari layanan-layanan yang ditemukannya. Metrik tersebut berhubungan dengan aspek paling penting dari performa layanan: latensi, gangguan, dan kesalahan. Metrik tersebut dapat membantu Anda mengidentifikasi masalah, memantau tren performa, dan mengoptimalkan sumber daya untuk meningkatkan pengalaman pengguna secara keseluruhan.

Tabel berikut mencantumkan metrik-metrik yang dikumpulkan oleh Sinyal Aplikasi. Metrik ini dikirim ke CloudWatch dalam ApplicationSignals namespace.

Metrik Deskripsi

Latency

Penundaan sebelum transfer data akan dimulai setelah permintaan dibuat.

Unit: Milidetik

Fault

Hitungan kesalahan sisi server HTTP 5XX dan kesalahan status rentang. OpenTelemetry

Satuan: Tidak ada

Error

Hitungan kesalahan pada klien HTTP 4XX. Kesalahan ini dianggap sebagai kesalahan permintaan yang tidak disebabkan oleh masalah layanan. Oleh karena itu, metrik Availability yang ditampilkan pada dasbor Sinyal Aplikasi tidak menganggap kesalahan ini sebagai gangguan layanan.

Satuan: Tidak ada

AvailabilityMetrik yang ditampilkan pada dasbor Sinyal Aplikasi dihitung sebagai (1 - Faults /Total) *100. Respons total mencakup semua tanggapan dan berasal dariSampleCount(Latency). Respons yang berhasil adalah semua tanggapan tanpa gangguan 5XX. Tanggapan 4XX diperlakukan sebagai berhasil ketika Sinyal Aplikasi menghitung Availability.

Dimensi-dimensi yang dikumpulkan dan kombinasi dimensi

Dimensi berikut didefinisikan untuk tiap-tiap metrik aplikasi standar. Untuk informasi selengkapnya tentang dimensi, silakan lihat Dimensi.

Dimensi yang berbeda dikumpulkan untuk metrik layanan dan metrik dependensi. Dalam layanan yang ditemukan oleh Sinyal Aplikasi, ketika microservice A memanggil microservice B, microservice B melayani permintaan. Dalam hal ini, microservice A memancarkan metrik dependensi dan microservice B memancarkan metrik layanan. Ketika klien memanggil layanan mikro A, maka layanan mikro A akan melayani permintaan dan memancarkan metrik layanan.

Dimensi untuk metrik layanan

Dimensi berikut dikumpulkan untuk metrik layanan.

Dimensi Deskripsi

Service

Nama layanan.

Panjang maksimum adalah 255 karakter.

Operation

Nama operasi API atau aktivitas lainnya.

Nilai maksimumnya adalah 1024 karakter. Saat ini, Anda dapat menetapkan tujuan tingkat layanan pada operasi hanya jika nama operasi adalah 194 karakter atau kurang.

Environment

Nama lingkungan tempat layanan berjalan. Jika layanan tidak berjalan di Amazon EKS, Anda dapat menentukan nilai kustom opsional untuk deployment.environment OTEL_ATTRIBUTE_RESOURCES parameter.

Nilai maksimumnya adalah 259 karakter.

Saat Anda melihat metrik ini di CloudWatch konsol, Anda dapat melihatnya menggunakan kombinasi dimensi berikut:

  • [Environment, Service, Operation, [Latency, Error, Fault]]

  • [Environment, Service, [Latency, Error, Fault]]

Dimensi untuk metrik dependensi

Dimensi berikut dikumpulkan untuk metrik ketergantungan:

Dimensi Deskripsi

Service

Nama layanan.

Panjang maksimum adalah 255 karakter.

Operation

Nama operasi API atau operasi lainnya.

Nilai maksimumnya adalah 1024 karakter.

RemoteService

Nama layanan jarak jauh yang dipanggil.

Panjang maksimum adalah 255 karakter.

RemoteOperation

Nama operasi API yang dipanggil.

Nilai maksimumnya adalah 1024 karakter.

Environment

Nama lingkungan tempat layanan berjalan. Jika layanan tidak berjalan di Amazon EKS, Anda dapat menentukan nilai kustom opsional untuk deployment.environment OTEL_ATTRIBUTE_RESOURCES parameter.

Nilai maksimumnya adalah 259 karakter.

RemoteEnvironment

Nama lingkungan tempat layanan ketergantungan berjalan. RemoteEnvironmentParameter secara otomatis dihasilkan ketika layanan memanggil dependensi dan keduanya berjalan di cluster yang sama. Jika RemoteEnvironment tidak, tidak dibuat atau dilaporkan dalam metrik ketergantungan layanan. Saat ini hanya tersedia di Amazon EKS dan K8S platform.

Nilai maksimumnya adalah 259 karakter.

RemoteResourceIdentifier

Nama sumber daya yang dipanggil oleh panggilan jarak jauh. RemoteResourceIdentifierParameter secara otomatis dihasilkan jika layanan memanggil AWS layanan jarak jauh. Jika RemoteResourceIdentifier tidak, tidak dibuat atau dilaporkan dalam metrik ketergantungan layanan.

Nilai maksimumnya adalah 1024 karakter.

RemoteResourceType

Jenis sumber daya yang dipanggil oleh panggilan jarak jauh. Diperlukan hanya jika RemoteResourceIdentifier didefinisikan.

Nilai maksimumnya adalah 1024 karakter.

Saat Anda melihat metrik ini di CloudWatch konsol, Anda dapat melihatnya menggunakan kombinasi dimensi berikut:

Berjalan di klaster Amazon EKS

  • [Environment, Service, Operation, RemoteService, RemoteOperation, RemoteEnvironment, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]]

  • [Environment, Service, Operation, RemoteService, RemoteOperation, RemoteEnvironment, [Latency, Error, Fault]]

  • [Environment, Service, Operation, RemoteService, RemoteOperation, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]]

  • [Environment, Service, Operation, RemoteService, RemoteOperation, [Latency, Error, Fault]]

  • [Environment, Service, RemoteService, RemoteEnvironment, [Latency, Error, Fault]]

  • [Environment, Service, RemoteService, [Latency, Error, Fault]]

  • [Environment, Service, RemoteService, RemoteOperation, RemoteEnvironment, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]]

  • [Environment, Service, RemoteService, RemoteOperation, RemoteEnvironment, [Latency, Error, Fault]]

  • [Environment, Service, RemoteService, RemoteOperation, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]]

  • [Environment, Service, RemoteService, RemoteOperation, [Latency, Error, Fault]]

  • [RemoteService [Latency, Error, Fault]]

  • [RemoteService, RemoteResourceIdentifier, RemoteResourceType [Latency, Error, Fault]]

Metrik runtime

Sinyal Aplikasi menggunakan AWS Distro untuk OpenTelemetry SDK untuk mengumpulkan metrik yang OpenTelemetry kompatibel secara otomatis dari aplikasi Java dan Python Anda. Untuk mengumpulkan metrik runtime, Anda harus memenuhi prasyarat berikut:

  • CloudWatch Agen Anda harus versi 1.300049.1 atau lebih baru.

  • Jika Anda menggunakan add-on Amazon CloudWatch Observability EKS, itu harus versi 2.30-eksbuild.1 atau yang lebih baru. Jika Anda memperbarui add-on, Anda harus memulai ulang aplikasi Anda.

  • Untuk aplikasi Java, Anda harus menjalankan 1.32.5 atau lebih baru dari AWS Distro untuk OpenTelemetry SDK for Java.

  • Untuk aplikasi Python, Anda harus menjalankan 0.7.0 atau lebih baru dari AWS Distro untuk OpenTelemetry SDK untuk Python.

  • Untuk aplikasi.Net, Anda harus menjalankan 1.6.0 atau lebih baru dari AWS Distro untuk OpenTelemetry SDK untuk.Net.

Metrik runtime tidak dikumpulkan untuk aplikasi Node.js.

Metrik runtime dibebankan sebagai bagian dari biaya Sinyal Aplikasi. Untuk informasi selengkapnya tentang CloudWatch harga, lihat CloudWatch Harga Amazon.

catatan

Masalah yang diketahui

Koleksi metrik runtime dalam rilis Java SDK v1.32.5 diketahui tidak berfungsi dengan aplikasi yang menggunakan Wildfly. JBoss Masalah ini meluas ke add-on Amazon CloudWatch Observability EKS, memengaruhi versi melalui. 2.3.0-eksbuild.1 2.6.0-eksbuild.1 Masalah telah diperbaiki dalam rilis Java SDK v1.32.6 dan versi add-on Amazon CloudWatch Observability EKS. v3.0.0-eksbuild.1

Jika Anda terpengaruh, upgrade versi Java SDK atau nonaktifkan koleksi metrik runtime Anda dengan menambahkan variabel OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED=false lingkungan ke aplikasi Anda.

Metrik runtime Java

Sinyal Aplikasi mengumpulkan metrik JVM berikut dari aplikasi Java yang Anda aktifkan untuk Sinyal Aplikasi. Semua metrik runtime dikirim ke CloudWatch dalam ApplicationSignals namespace, dan dikumpulkan dengan set dimensi dan. Service Environment

Nama metrik Deskripsi Statistik yang bermakna

JVMGCDuration

Metrik agregat untuk durasi tindakan pengumpulan sampah JVM.

Satuan: Milidetik

Jumlah, Rata-rata, Minimum, Maksimum

JVMGCOldGenDuration

Metrik agregat untuk durasi tindakan pengumpulan sampah JVM dari generasi lama. Hanya tersedia di G1.

Satuan: Milidetik

Jumlah, Rata-rata, Minimum, Maksimum

JVMGCYoungGenDuration

Metrik agregat untuk durasi aksi pengumpulan sampah JVM generasi muda. Hanya tersedia di G1.

Satuan: Milidetik

Jumlah, Rata-rata, Minimum, Maksimum

JVMGCCount

Metrik agregat untuk jumlah tindakan pengumpulan sampah JVM.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

JVMGCOldGenCount

Metrik agregat untuk jumlah tindakan pengumpulan sampah JVM dari generasi lama. Hanya tersedia di G1.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

JVMGCYoungGenCount

Metrik agregat untuk jumlah aksi pengumpulan sampah JVM generasi muda. Hanya tersedia di G1.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

JVMMemoryHeapUsed

Jumlah tumpukan memori yang digunakan.

Unit: Bita

Rata-rata, Minimum, Maksimum

JVMMemoryUsedAfterLastGC

Jumlah memori yang digunakan, yang diukur setelah acara pengumpulan sampah terbaru di kolam ini.

Unit: Bita

Rata-rata, Minimum, Maksimum

JVMMemoryOldGenUsed

Jumlah memori yang digunakan oleh generasi lama.

Unit: Bita

Rata-rata, Minimum, Maksimum

JVMMemorySurvivorSpaceUsed

Jumlah tumpukan memori yang digunakan oleh ruang penyintas.

Unit: Bita

Rata-rata, Minimum, Maksimum

JVMMemoryEdenSpaceUsed

Jumlah memori yang digunakan oleh ruang eden.

Unit: Bita

Rata-rata, Minimum, Maksimum

JVMMemoryNonHeapUsed

Jumlah memori non-heap yang digunakan.

Unit: Bita

Rata-rata, Minimum, Maksimum

JVMThreadCount

Jumlah thread yang mengeksekusi, termasuk utas daemon dan non-daemon.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

JVMClassLoaded

Jumlah kelas yang dimuat.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

JVMCpuTime

Waktu CPU yang digunakan oleh proses, seperti yang dilaporkan oleh JVM.

Satuan: Tidak ada (Nanodetik)

Jumlah, Rata-rata, Minimum, Maksimum

JVMCpuRecentUtilization

CPU terbaru digunakan oleh proses, seperti yang dilaporkan oleh JVM.

Satuan: Tidak ada

Rata-rata, Minimum, Maksimum

Metrik runtime Python

Sinyal Aplikasi mengumpulkan metrik berikut dari aplikasi Python yang Anda aktifkan untuk Sinyal Aplikasi. Semua metrik runtime dikirim ke CloudWatch dalam ApplicationSignals namespace, dan dikumpulkan dengan set dimensi dan. Service Environment

Nama metrik Deskripsi Statistik yang bermakna

PythonProcessGCCount

Jumlah total objek yang saat ini sedang dilacak.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

PythonProcessGCGen0Count

Jumlah objek yang saat ini dilacak di Generasi 0.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

PythonProcessGCGen1Count

Jumlah objek yang saat ini sedang dilacak di Generasi 1.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

PythonProcessGCGen2Count

Jumlah objek yang saat ini sedang dilacak di Generasi 2.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

PythonProcessVMSMemoryUsed

Jumlah total memori virtual yang digunakan oleh proses.

Unit: Bita

Rata-rata, Minimum, Maksimum

PythonProcessRSSMemoryUsed

Jumlah total memori fisik yang tidak ditukar yang digunakan oleh proses.

Unit: Bita

Rata-rata, Minimum, Maksimum

PythonProcessThreadCount

Jumlah thread yang saat ini digunakan oleh proses.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

PythonProcessCpuTime

Waktu CPU yang digunakan oleh proses.

Unit: Detik

Jumlah, Rata-rata, Minimum, Maksimum

PythonProcessCpuUtilization

Pemanfaatan CPU dari proses tersebut.

Satuan: Tidak ada

Rata-rata, Minimum, Maksimum

Metrik runtime .Net

Sinyal Aplikasi mengumpulkan metrik berikut dari aplikasi.Net yang Anda aktifkan untuk Sinyal Aplikasi. Semua metrik runtime dikirim ke CloudWatch dalam ApplicationSignals namespace, dan dikumpulkan dengan set dimensi dan. Service Environment

Nama metrik Deskripsi Statistik yang bermakna

DotNetGCGen0Count

Jumlah total metrik pengumpulan sampah yang dilacak di Generasi 0 sejak proses dimulai.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

DotNetGCGen1Count

Jumlah total metrik pengumpulan sampah yang dilacak di Generasi 1 sejak proses dimulai.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

DotNetGCGen2Count

Jumlah total metrik pengumpulan sampah yang dilacak di Generasi 2 sejak proses dimulai.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

DotNetGCDuration

Jumlah total waktu berhenti dalam pengumpulan sampah sejak proses dimulai.

Satuan: Tidak ada

Jumlah, Rata-rata, Minimum, Maksimum

DotNetGCGen0HeapSize

Ukuran tumpukan (termasuk fragmentasi) Generasi 0 diamati selama pengumpulan sampah terbaru.

catatan

Metrik ini hanya tersedia setelah Pengumpulan Sampah pertama selesai.

Unit: Bita

Rata-rata, Minimum, Maksimum

DotNetGCGen1HeapSize

Ukuran tumpukan (termasuk fragmentasi) Generasi 1 diamati selama pengumpulan sampah terbaru.

catatan

Metrik ini hanya tersedia setelah Pengumpulan Sampah pertama selesai.

Unit: Bita

Rata-rata, Minimum, Maksimum

DotNetGCGen2HeapSize

Ukuran tumpukan (termasuk fragmentasi) Generasi 2 diamati selama pengumpulan sampah terbaru.

catatan

Metrik ini hanya tersedia setelah Pengumpulan Sampah pertama selesai.

Unit: Bita

Rata-rata, Minimum, Maksimum

DotNetGCLOHHeapSize

Ukuran tumpukan objek besar (termasuk fragmentasi) diamati selama pengumpulan sampah terbaru.

catatan

Metrik ini hanya tersedia setelah Pengumpulan Sampah pertama selesai.

Unit: Bita

Rata-rata, Minimum, Maksimum

DotNetGCPOHHeapSize

Ukuran tumpukan objek yang disematkan (termasuk fragmentasi) diamati selama pengumpulan sampah terbaru.

catatan

Metrik ini hanya tersedia setelah Pengumpulan Sampah pertama selesai.

Unit: Bita

Rata-rata, Minimum, Maksimum

DotNetThreadCount

Jumlah thread pool thread yang saat ini ada.

Satuan: Tidak ada

Rata-rata, Minimum, Maksimum

DotNetThreadQueueLength

Jumlah item pekerjaan yang saat ini sedang antri untuk diproses oleh kumpulan utas.

Satuan: Tidak ada

Rata-rata, Minimum, Maksimum

Menonaktifkan koleksi metrik runtime

Metrik runtime dikumpulkan secara default untuk aplikasi Java dan Python yang diaktifkan untuk Sinyal Aplikasi. Jika Anda ingin menonaktifkan koleksi metrik ini, ikuti petunjuk di bagian ini untuk lingkungan Anda.

Amazon EKS

Untuk menonaktifkan metrik runtime di aplikasi Amazon EKS di tingkat aplikasi, tambahkan variabel lingkungan berikut ke spesifikasi beban kerja Anda.

env: - name: OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED value: "false"

Untuk menonaktifkan metrik runtime di aplikasi Amazon EKS di tingkat cluster, terapkan konfigurasi ke konfigurasi lanjutan add-on Amazon CloudWatch Observability EKS Anda.

{ "agent": { "config": { "traces": { "traces_collected": { "application_signals": { } } }, "logs": { "metrics_collected": { "application_signals": { } } } }, "manager": { "autoInstrumentationConfiguration": { "java": { "runtime_metrics": { "enabled": false } }, "python": { "runtime_metrics": { "enabled": false } }, "dotnet": { "runtime_metrics": { "enabled": false } } } } } }

Amazon ECS

Untuk menonaktifkan metrik runtime di aplikasi Amazon ECS, tambahkan variabel lingkungan OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED=false dalam revisi definisi tugas baru dan gunakan kembali aplikasi.

EC2

Untuk menonaktifkan metrik runtime di EC2 aplikasi Amazon, tambahkan variabel lingkungan OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED=false sebelum aplikasi dimulai.

Kubernetes

Untuk menonaktifkan metrik runtime di aplikasi Kubernetes di level aplikasi, tambahkan variabel lingkungan berikut ke spesifikasi beban kerja Anda.

env: - name: OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED value: "false"

Untuk menonaktifkan metrik runtime di aplikasi Kubernetes di tingkat klaster, gunakan yang berikut ini:

helm upgrade ... \ --set-string manager.autoInstrumentationConfiguration.java.runtime_metrics.enabled=false \ --set-string manager.autoInstrumentationConfiguration.python.runtime_metrics.enabled=false \ -\-set-string manager.autoInstrumentationConfiguration.dotnet.runtime_metrics.enabled=false