Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menghasilkan subsegmen kustom dengan X-Ray SDK
catatan
End-of-support pemberitahuan — Pada tanggal 25 Februari 2027, AWS X-Ray akan menghentikan dukungan untuk AWS X-Ray SDKs dan daemon. Setelah 25 Februari 2027, Anda tidak akan lagi menerima pembaruan atau rilis. Untuk informasi selengkapnya tentang garis waktu dukungan, lihatX-Ray SDK dan daemon akhir garis waktu dukungan. Kami merekomendasikan untuk bermigrasi ke OpenTelemetry. Untuk informasi lebih lanjut tentang migrasi ke OpenTelemetry, lihat Migrasi dari instrumentasi X-Ray ke instrumentasi. OpenTelemetry
Subsegmen memperluas segmen pelacakan dengan detail tentang pekerjaan yang dilakukan untuk melayani permintaan. Setiap kali Anda melakukan panggilan dengan klien berinstrumen, X-Ray tersebut mencatat informasi yang dihasilkan dalam subsegmen. Anda dapat membuat subsegment tambahan untuk mengelompokkan subsegment lain, untuk mengukur performa bagian kode, atau untuk mencatat anotasi dan metadata.
Untuk mengelola subsegmen, gunakan metode begin_subsegment
dan end_subsegment
subsegment = XRay.recorder.begin_subsegment name: 'annotations', namespace: 'remote'
my_annotations = { id: 12345 }
subsegment.annotations.update my_annotations
XRay.recorder.end_subsegment
Untuk membuat subsegmen karena fungsi, membungkusnya dalam panggilan ke XRay.recorder.capture
.
XRay.recorder.capture('name_for_subsegment') do |subsegment|
resp = myfunc() # myfunc is your function
subsegment.annotations.update k1: 'v1'
resp
end
Ketika Anda membuat subsegmen dalam segmen atau subsegmen lain, X-Ray SDK menghasilkan ID untuknya dan mencatat waktu mulai dan waktu akhir.
contoh Subsegmen dengan metadata
"subsegments": [{
"id": "6f1605cd8a07cb70",
"start_time": 1.480305974194E9,
"end_time": 1.4803059742E9,
"name": "Custom subsegment for UserModel.saveUser function",
"metadata": {
"debug": {
"test": "Metadata string from UserModel.saveUser"
}
},