Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Simpan dan jalankan kembali kueri CloudWatch Logs Insights
Setelah Anda membuat kueri, Anda dapat menyimpannya, dan menjalankannya lagi nanti. Kueri disimpan dalam struktur folder, sehingga Anda dapat mengaturnya. Anda dapat menyimpan sebanyak 1000 kueri per wilayah dan per akun.
Kueri disimpan pada tingkat khusus Wilayah, bukan tingkat khusus pengguna. Jika Anda membuat dan menyimpan kueri, pengguna lain yang memiliki akses ke CloudWatch Log di Wilayah yang sama dapat melihat semua kueri yang disimpan dan struktur foldernya di Wilayah.
Untuk menyimpan kueri, Anda harus masuk ke peran yang memiliki izinlogs:PutQueryDefinition. Untuk melihat daftar kueri yang disimpan, Anda harus masuk ke peran yang memiliki izinlogs:DescribeQueryDefinitions.
catatan
Anda dapat membuat dan menyimpan kueri dengan parameter — template yang dapat digunakan kembali dengan placeholder bernama. Alih-alih menyimpan beberapa variasi kueri yang sama dengan nilai yang berbeda, buat satu templat dan berikan nilai parameter yang berbeda saat Anda menjalankannya. Fungsionalitas ini saat ini didukung untuk kueri hanya menggunakan bahasa kueri Wawasan Log. Untuk informasi selengkapnya, lihat Menggunakan kueri tersimpan dengan parameter.
Tip
Anda dapat membuat folder untuk kueri yang disimpan denganPutQueryDefinition. Untuk membuat folder untuk kueri yang disimpan, gunakan garis miring (/) untuk mengawali nama kueri yang Anda inginkan dengan nama folder yang Anda inginkan:. < Untuk informasi lebih lanjut tentang tindakan ini, lihat PutQueryDefinition. folder-name>/<query-name>
Untuk menyimpan versi baru dari kueri tersimpan
Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/
. -
Di panel navigasi, pilih Log, lalu pilih Wawasan Log.
-
Di sebelah kanan, pilih Queries (Kueri).
-
Pilih kueri dari daftar Saved queries (Kueri tersimpan). Itu akan muncul di editor kueri.
-
Modifikasi kueri. Jika Anda perlu menjalankannya untuk memeriksa pekerjaan Anda, pilih Run query (Jalankan kueri).
-
Saat Anda siap untuk menyimpan versi baru, pilih Actions (Tindakan), Save as (Simpan sebagai).
-
Masukkan nama untuk kueri.
-
(Opsional) Pilih folder tempat Anda ingin menyimpan kueri. Pilih Create new (Buat baru) untuk membuat folder. Jika Anda membuat folder baru, Anda dapat menggunakan karakter garis miring (/) dalam nama folder untuk menentukan struktur folder. Sebagai contoh, menamai folder baru dengan
folder-level-1/folder-level-2akan membuat folder tingkat atas yang disebutfolder-level-1, dengan folder lain yang bernamafolder-level-2di dalam folder itu. Kueri disimpan dalamfolder-level-2. -
(Opsional) Ubah grup log kueri atau teks kueri.
-
Pilih Simpan.
Untuk menghapus kueri, Anda harus masuk ke peran yang memiliki izin logs:DeleteQueryDefinition.
Untuk mengedit atau menghapus kueri tersimpan
Buka CloudWatch konsol di https://console.aws.amazon.com/cloudwatch/
. -
Di panel navigasi, pilih Log, lalu pilih Wawasan Log.
-
Di sebelah kanan, pilih Queries (Kueri).
-
Pilih kueri dari daftar Saved queries (Kueri tersimpan). Itu akan muncul di editor kueri.
-
Pilih Actions (Tindakan), Edit atau Actions (Tindakan), Delete (Hapus).
Menggunakan kueri yang disimpan dengan parameter
Kueri tersimpan dengan parameter adalah templat kueri yang dapat digunakan kembali dengan placeholder bernama. Alih-alih mempertahankan beberapa salinan kueri yang hampir identik, Anda dapat menyimpan template dan memberikan nilai parameter yang berbeda saat menjalankan kueri. Parameter hanya didukung dalam bahasa kueri Wawasan CloudWatch Log.
Cara kerjanya
Saat menyimpan kueri, placeholder mengidentifikasi nilai yang dapat Anda berikan pada waktu eksekusi kueri. Placeholder menggunakan sintaks. {{parameterName}} Berikut ini adalah contoh dari query tersimpan bernama ErrorsByLevel dengan dua parameter logLevel danapplicationName.
fields @timestamp, @message | filter level = {{logLevel}} | filter applicationName = {{applicationName}}
Untuk menjalankan kueri tersimpan, Anda dapat memanggilnya menggunakan nama kueri yang diawali dengan $ dan meneruskan nilai parameter. Mesin kueri CloudWatch Logs Insights menggantikan setiap placeholder. Jika parameter berisi nilai default, maka nilai-nilai tersebut digunakan jika tidak ada nilai lain yang disediakan.
# Run query by using query name and passing parameter values explicitly $ErrorsByLevel(logLevel = "WARN", applicationName = "OrderService") # Run query without specifying parameter values - default values are used in this case. $ErrorsByLevel()
Nama kueri tersimpan yang berisi spasi atau karakter khusus harus diapit dengan backticks:
$`Errors By Level`(logLevel = "WARN")
Contoh kueri yang disimpan dengan parameter
Menambahkan batas hasil sebagai parameter
Nama kueri: ErrorsByLevel dengan parameter logLevel (default:"ERROR"), applicationName (default:"OrderService"), dan maxResults (default:50)
fields @timestamp, @message, @logStream | filter level = {{logLevel}} | filter applicationName = {{applicationName}} | sort @timestamp desc | limit {{maxResults}}
# Run the query using the query name and passing parameter values $ErrorsByLevel(logLevel = "WARN", applicationName = "OrderService", maxResults = 100)
Menggunakan beberapa kueri tersimpan dengan parameter
Contoh di bawah ini menggunakan ErrorsByLevel dan kueri tersimpan kedua RecentN yang didefinisikan sebagai sort @timestamp desc | limit {{count}} (dengan parametercount, default20). Mesin kueri CloudWatch Logs Insights memperluas setiap kueri sebelum menjalankannya.
# Using multiple queries with parameters in sequence $ErrorsByLevel(logLevel = "WARN", applicationName = "OrderService") | $RecentN(count = 10) # Each of the queries is expanded, resulting in the following query when it is run. fields @timestamp, @message | filter level = "WARN" | filter applicationName = "OrderService" | sort @timestamp desc | limit 10
Kuota dan penanganan kesalahan
catatan
Setiap kueri yang disimpan dapat memiliki maksimum 20 parameter.
String kueri yang diperluas tidak dapat melebihi 10.000 karakter. Nama parameter harus dimulai dengan huruf atau garis bawah. Kueri tersimpan tidak dapat mereferensikan kueri lain yang disimpan (pemanggilan bersarang tidak didukung).
| Kesalahan | Penyebab |
|---|---|
Parameter hanya didukung untuk bahasa kueri CWLI |
Parameter hanya didukung dalam bahasa kueri Wawasan CloudWatch Log. |
Parameter yang diperlukan tidak ditemukan di QueryString |
Nama parameter di |
Jumlah parameter melebihi maksimum 20 |
Kueri yang disimpan saat ini hanya mendukung 20 parameter. |
Nama parameter duplikat |
Definisi kueri memiliki parameter duplikat di |
catatan
Untuk membuat atau memperbarui kueri yang disimpan dengan parameter, Anda memerlukan logs:PutQueryDefinition izin. Untuk menjalankannya, Anda perlu logs:StartQuery danlogs:DescribeQueryDefinitions.