Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menambahkan kode ke aplikasi Anda
penting
Pemberitahuan akhir dukungan: Pada 16 Oktober 2025, AWS akan menghentikan dukungan untuk CloudWatch Evidently. Setelah 16 Oktober 2025, Anda tidak akan lagi dapat mengakses konsol Terbukti atau sumber daya Terbukti.
Untuk bekerja dengan CloudWatch Evidently, Anda menambahkan kode ke aplikasi Anda untuk menetapkan variasi ke setiap sesi pengguna, dan untuk mengirim metrik ke Evidently. Anda menggunakan EvaluateFeature
operasi CloudWatch Evidently untuk menetapkan variasi ke sesi pengguna, dan Anda menggunakan PutProjectEvents
operasi untuk mengirim peristiwa ke Evidently untuk digunakan untuk menghitung metrik untuk peluncuran atau eksperimen Anda.
Saat Anda membuat variasi atau metrik khusus, konsol CloudWatch Evidently menyediakan contoh kode yang perlu Anda tambahkan.
Sebagai contoh, lihat end-to-end.Tutorial: Pengujian A/B dengan aplikasi sampel Evidently
Menggunakan EvaluateFeature
Ketika variasi fitur digunakan dalam peluncuran atau percobaan, aplikasi menggunakan EvaluateFeatureoperasi untuk menetapkan setiap sesi pengguna variasi. Penetapan sebuah variasi untuk pengguna adalah sebuah peristiwa evaluasi. Saat Anda memanggil operasi ini, Anda harus memasukkan hal berikut ini:
Nama fitur– Wajib. Evidently memproses evaluasi sesuai dengan aturan evaluasi fitur peluncuran atau percobaan, dan memilih sebuah variasi untuk entitas.
EntityID– Wajib. Mewakili pengguna yang unik.
evaluationContext– Opsional. Objek JSON yang mewakili informasi tambahan tentang seorang pengguna. Evidently akan menggunakan nilai ini untuk mencocokkan pengguna dengan sebuah segmen audiens Anda selama evaluasi-evaluasi fitur, jika Anda telah membuat segmen. Untuk informasi selengkapnya, lihat Gunakan segmen-segmen untuk memfokuskan pada audiens Anda.
Berikut ini adalah contoh dari sebuah nilai
evaluationContext
yang dapat Anda kirim ke Evidently.{ "Browser": "Chrome", "Location": { "Country": "United States", "Zipcode": 98007 } }
Evaluasi lengket
CloudWatch Terbukti menggunakan evaluasi “lengket”. Sebuah konfigurasi tunggal entityId
, fitur, konfigurasi fitur, dan evaluationContext
selalu menerima penetapan variasi yang sama. Satu-satunya waktu saat penetapan variasi ini berubah adalah ketika ada sebuah entitas yang ditambahkan ke penggantian atau ada lalu lintas percobaan yang dipanggil.
Sebuah konfigurasi fitur mencakup hal-hal berikut:
-
Variasi-variasi fitur
-
Konfigurasi variasi (persentase yang ditetapkan untuk masing-masing variasi) untuk sebuah percobaan yang sedang berjalan untuk fitur ini, jika ada.
-
Konfigurasi variasi untuk sebuah peluncuran yang sedang berjalan untuk fitur ini, jika ada. Konfigurasi variasi ini mencakup penggantian segmen yang sudah ditentukan, jika ada.
Jika alokasi lalu lintas untuk sebuah percobaan dinaikkan, setiap entityId
yang sebelumnya ditetapkan ke sebuah kelompok perlakuan percobaan akan terus menerima perlakuan yang sama. Setiap entityId
yang sebelumnya ditetapkan ke kelompok kontrol tersebut, dapat ditetapkan ke sebuah kelompok perlakuan percobaan, sesuai dengan konfigurasi variasi yang ditentukan untuk percobaan tersebut.
Jika alokasi lalu lintas dari sebuah percobaan diturunkan, sebuah entityId
mungkin akan beralih dari sebuah kelompok perlakuan ke kelompok kontrol, tetapi tidak akan masuk ke sebuah kelompok perlakuan yang berbeda.
Menggunakan PutProjectEvents
Untuk mengkodekan metrik khusus untuk Evidently, Anda menggunakan PutProjectEventsoperasi. Berikut ini adalah sebuah contoh muatan sederhana.
{ "events": [ { "timestamp": {{$timestamp}}, "type": "aws.evidently.custom", "data": "{\"details\": {\"pageLoadTime\": 800.0}, \"userDetails\": {\"userId\": \"test-user\"}}" } ] }
entityIdKey
bisa saja menjadi sebuah entityId
atau Anda dapat mengganti namanya dengan nama lain, misalnya userId
. Dalam peristiwa yang sebenarnya, entityId
dapat berupa nama pengguna, ID sesi, dan sebagainya.
"metricDefinition":{ "name": "noFilter", "entityIdKey": "userDetails.userId", //should be consistent with jsonValue in events "data" fields "valueKey": "details.pageLoadTime" },
Untuk memastikan bahwa peristiwa terkait dengan peluncuran atau percobaan yang benar, Anda harus memasukkan entityId
yang sama ketika Anda memanggil EvaluateFeature
dan PutProjectEvents
. Pastikan untuk menelepon PutProjectEvents
setelah EvaluateFeature
panggilan, jika tidak data dijatuhkan dan tidak akan digunakan oleh CloudWatch Evidently.
Operasi PutProjectEvents
tidak memerlukan nama fitur sebagai sebuah parameter input. Dengan cara ini, Anda akan dapat menggunakan satu peristiwa dalam beberapa percobaan. Sebagai contoh, Anda memanggil EvaluateFeature
dengan entityId
yang diatur ke userDetails.userId
. Jika Anda mengeksekusi dua percobaan atau lebih, maka Anda dapat memiliki satu peristiwa dari metrik pemancar sesi yang dimiliki pengguna tersebut untuk masing-masing percobaan itu. Untuk melakukan hal ini, Anda harus memanggil PutProjectEvents
sekali untuk masing-masing percobaan, dengan menggunakan entityId
yang sama.
Pengaturan waktu
Setelah aplikasi Anda memanggil EvaluateFeature
, akan ada periode waktu satu jam di mana peristiwa metrik dari PutProjectEvents
dikaitkan berdasarkan evaluasi tersebut. Jika ada lagi peristiwa yang terjadi setelah periode satu jam itu, maka peristiwa tersebut tidak akan dikaitkan.
Namun demikian, jika entityId
yang sama digunakan untuk memanggil panggilan EvaluateFeature
baru selama jendela waktu satu jam panggilan awal itu, maka hasil EvaluateFeature
selanjutnya sekarang akan digunakan sebagai gantinya, dan pengatur waktu satu jam dimulai ulang. Hal ini hanya dapat terjadi dalam keadaan tertentu, seperti ketika lalu lintas percobaan diputar di antara dua tugas, sebagaimana yang dijelaskan dalam uraian yang ada di bagian Evaluasi lengket sebelumnya.
Sebagai contoh, lihat end-to-end.Tutorial: Pengujian A/B dengan aplikasi sampel Evidently