Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Sintaks aturan Contributor Insights di CloudWatch
Bagian ini menjelaskan aturan sintaksis untuk Wawasan Kontributor. Gunakan sintaks ini hanya ketika Anda membuat aturan dengan memasukkan blok JSON. Jika Anda menggunakan pemandu untuk membuat aturan, Anda tidak perlu mengetahui sintaksnya. Untuk informasi selengkapnya tentang membuat aturan menggunakan pemandu, silakan lihat Membuat aturan Contributor Insights di CloudWatch.
Semua pencocokan aturan untuk peristiwa log dan nilai bidang peristiwa peka huruf besar dan kecil.
Contoh berikut mengilustrasikan sintaks untuk log JSON.
{ "Schema": { "Name": "CloudWatchLogRule", "Version": 1 }, "LogGroupNames": [ "API-Gateway-Access-Logs*", "Log-group-name2" ], "LogFormat": "JSON", "Contribution": { "Keys": [ "$.ip" ], "ValueOf": "$.requestBytes", "Filters": [ { "Match": "$.httpMethod", "In": [ "PUT" ] } ] }, "AggregateOn": "Sum" }
Bidang dalam Aturan Wawasan Kontributor
- Skema
-
Nilai
Schemauntuk aturan yang menganalisis data CloudWatch Log harus selalu{"Name": "CloudWatchLogRule", "Version": 1} - LogGroupNames
-
Sebuah susunan string. Untuk setiap elemen dalam susunan, Anda dapat secara opsional menggunakan
*di akhir rangkaian untuk menyertakan semua grup log dengan nama yang dimulai dengan awalan itu.Berhati-hatilah menggunakan karakter pengganti dengan nama grup log. Anda dikenakan biaya untuk setiap peristiwa log yang sesuai dengan aturan. Jika secara tidak sengaja mencari lebih banyak grup log dari yang Anda inginkan, Anda mungkin akan dikenakan biaya tak terduga. Untuk informasi selengkapnya, lihat CloudWatch Harga Amazon
. - LogGroupARNs
-
Jika Anda membuat aturan ini di akun pemantauan observabilitas CloudWatch lintas akun, Anda dapat menggunakannya
LogGroupARNsuntuk menentukan grup log di akun sumber yang ditautkan ke akun pemantauan, dan untuk menentukan grup log di akun pemantauan itu sendiri. Anda harus menentukan salah satuLogGroupNamesatauLogGroupARNsdalam aturan Anda, tetapi tidak keduanya.LogGroupARNsadalah sebuah susunan string. Untuk setiap elemen dalam susunan, Anda dapat secara opsional menggunakan*sebagai wildcard dalam situasi tertentu. Misalnya Anda dapat menentukanarn:aws:logs:us-west-1:*:log-group/MyLogGroupName2grup log yang diberi namaMyLogGroupName2di semua akun sumber dan di akun pemantauan, di Wilayah AS Barat (California Utara). Anda juga dapat menentukanarn:aws:logs:us-west-1:111122223333:log-group/GroupNamePrefix*untuk menentukan semua grup log di AS Barat (California Utara) di 111122223333 yang memiliki nama yang dimulai denganGroupNamePrefix.Anda tidak dapat menentukan sebagian ID AWS akun sebagai awalan dengan kartu liar.
Hati-hati menggunakan wildcard dengan grup ARNs log. Anda dikenakan biaya untuk setiap peristiwa log yang sesuai dengan aturan. Jika secara tidak sengaja mencari lebih banyak grup log dari yang Anda inginkan, Anda mungkin akan dikenakan biaya tak terduga. Untuk informasi selengkapnya, lihat CloudWatch Harga Amazon
. - LogFormat
-
Nilai yang valid adalah
JSONdanCLF. - Kontribusi
-
Objek ini mencakup
Keyssusunan dengan sebanyak empat anggota, secara opsional satuValueOf, dan secara opsional susunan sebanyak empatFilters. - Kunci
-
Susunan hingga empat bidang log yang digunakan sebagai dimensi untuk mengklasifikasi kontributor. Jika Anda memasukkan lebih dari satu kunci, setiap kombinasi nilai unik untuk kunci tersebut dihitung sebagai kontributor unik. Bidang harus ditentukan menggunakan notasi format properti JSON.
- ValueOf
-
(Opsional) Tentukan ini hanya ketika Anda menentukan
Sumsebagai nilai dariAggregateOn.ValueOfmenentukan bidang log dengan nilai numerik. Dalam jenis aturan ini, kontributor diberikan peringkat berdasarkan jumlah nilai bidang ini, bukan jumlah kejadiannya dalam pencatatan log. Sebagai contoh, jika ingin menyortir kontributor berdasarkan totalBytesSentselama satu periode, Anda akan menentukanValueOfuntukBytesSentdan menentukanSumuntukAggregateOn. - Filter
-
Menentukan array sebanyak empat filter untuk mempersempit peristiwa log yang termasuk dalam laporan. Jika Anda menetapkan beberapa penyaring, Wawasan Kontributor mengevaluasinya dengan operator DAN logis. Anda dapat menggunakan ini untuk menyaring peristiwa log yang tidak relevan dalam pencarian atau Anda dapat menggunakannya untuk memilih kontributor tunggal untuk menganalisis perilaku mereka.
Setiap anggota dalam susunan harus menyertakan
Matchbidang dan bidang yang menunjukkan jenis operator yang cocok untuk digunakan.Bidang
Matchmenetapkan bidang log untuk mengevaluasi di penyaring. Bidang log ditentukan menggunakan notasi format properti JSON.Bidang operator yang cocok harus salah satu dari berikut:
In,NotIn,StartsWith,GreaterThan,LessThan,EqualTo,NotEqualTo, atauIsPresent. Bilang bidang operator adalahIn,NotIn, atauStartsWith, itu diikuti dengan susunan rangkaian nilai untuk diperiksa. Wawasan Kontributor mengevaluasi susunan nilai rangkaian dengan operator OR. Susunan dapat mencakup sebanyak 10 nilai rangkaian.Jika bidang operator adalah
GreaterThan,LessThan,EqualTo, atauNotEqualTo, diikuti dengan nilai numerik tunggal untuk dibandingkan.Jika bidang operator adalah
IsPresent, itu diikuti olehtrueataufalse. Operator ini mencocokkan log acara berdasarkan pada apakah bidang log yang ditentukan ada di dalam peristiwa log.isPresenthanya bekerja dengan nilai di simpul daun properti JSON. Misalnya, penyaring yang mencari kecocokan denganc-counttidak mengevaluasi peristiwa log dengan nilaidetails.c-count.c1.Lihat empat contoh penyaring berikut:
{"Match": "$.httpMethod", "In": [ "PUT", ] } {"Match": "$.StatusCode", "EqualTo": 200 } {"Match": "$.BytesReceived", "GreaterThan": 10000} {"Match": "$.eventSource", "StartsWith": [ "ec2", "ecs" ] } - AggregateOn
-
Nilai yang valid adalah
CountdanSum. Menentukan apakah akan menggabungkan laporan berdasarkan pada hitungan kejadian atau jumlah dari nilai bidang yang ditentukan dalam bidangValueOf.
Rotasi format properti JSON
Bidang Keys, ValueOf, dan Match mengikuti format properti JSON dengan notasi titik, ketika $ mewakili akar dari objek JSON. Hal ini diikuti dengan periode dan kemudian rangkaian alfanumerik dengan nama subproperti. Beberapa tingkat properti didukung.
Karakter pertama dari string hanya bisa A-Z atau a-z. Karakter string berikut ini dapat berupa A-Z, a-z, atau 0-9.
Daftar berikut menggambarkan contoh format properti JSON yang benar:
$.userAgent $.endpoints[0] $.users[1].name $.requestParameters.instanceId
Bidang tambahan di dalam aturan untuk log CLF
Peristiwa log Format Log Umum (CLF) tidak memiliki nama untuk bidang seperti JSON. Untuk menyediakan bidang yang digunakan untuk aturan Wawasan Kontributor, peristiwa log CLF dapat diperlakukan sebagai susunan dengan indeks mulai dari 1. Anda dapat menentukan bidang pertama sebagai "1", bidang kedua sebagai "2", dan seterusnya.
Untuk membuat aturan untuk log CLF lebih mudah dibaca, Anda dapat menggunakan Fields. Ini memungkinkan Anda untuk memberikan nama alias untuk lokasi bidang CLF. Misalnya, Anda dapat menentukan bahwa lokasi "4" adalah alamat IP. Setelah ditentukan, IpAddress dapat digunakan sebagai properti di Keys, ValueOf, dan Filters dalam aturan.
Berikut adalah contoh aturan untuk log CLF yang menggunakan bidang Fields.
{ "Schema": { "Name": "CloudWatchLogRule", "Version": 1 }, "LogGroupNames": [ "API-Gateway-Access-Logs*" ], "LogFormat": "CLF", "Fields": { "4": "IpAddress", "7": "StatusCode" }, "Contribution": { "Keys": [ "IpAddress" ], "Filters": [ { "Match": "StatusCode", "EqualTo": 200 } ] }, "AggregateOn": "Count" }