Jalankan dan kelola kueri CloudTrail Lake dengan AWS CLI - AWS CloudTrail

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

Jalankan dan kelola kueri CloudTrail Lake dengan AWS CLI

Anda dapat menggunakan AWS CLI untuk menjalankan dan mengelola kueri CloudTrail Danau Anda. Saat menggunakan AWS CLI, ingatlah bahwa perintah Anda berjalan di Wilayah AWS konfigurasi untuk profil Anda. Jika Anda ingin menjalankan perintah di Wilayah yang berbeda, ubah Wilayah default untuk profil Anda, atau gunakan parameter --region bersama perintah tersebut.

Perintah yang tersedia untuk kueri CloudTrail Lake

Perintah untuk menjalankan dan mengelola kueri di CloudTrail Lake meliputi:

Untuk daftar perintah yang tersedia untuk penyimpanan data acara CloudTrail Lake, lihatPerintah yang tersedia untuk penyimpanan data acara.

Untuk daftar perintah yang tersedia untuk dasbor CloudTrail Lake, lihatPerintah yang tersedia untuk dasbor.

Untuk daftar perintah yang tersedia untuk integrasi CloudTrail Lake, lihatPerintah yang tersedia untuk integrasi CloudTrail Lake.

Menghasilkan kueri dari prompt bahasa alami dengan AWS CLI

Jalankan generate-query perintah untuk menghasilkan kueri dari prompt bahasa Inggris. Untuk--event-data-stores, berikan ARN (atau akhiran ID ARN) dari penyimpanan data acara yang ingin Anda kueri. Anda hanya dapat menentukan satu penyimpanan data acara. Untuk--prompt, berikan prompt dalam bahasa Inggris.

aws cloudtrail generate-query --event-data-stores arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLE-ee54-4813-92d5-999aeEXAMPLE \ --prompt "Show me all console login events for the past week?"

Jika berhasil, perintah mengeluarkan pernyataan SQL dan memberikan QueryAlias yang akan Anda gunakan dengan start-query perintah untuk menjalankan kueri terhadap penyimpanan data acara Anda.

{ "QueryStatement": "SELECT * FROM $EDS_ID WHERE eventname = 'ConsoleLogin' AND eventtime >= timestamp '2024-09-16 00:00:00' AND eventtime <= timestamp '2024-09-23 00:00:00' AND eventSource = 'signin.amazonaws.com'", "QueryAlias": "AWSCloudTrail-UUID" }

Mulai kueri dengan AWS CLI

AWS CLI start-queryPerintah contoh berikut menjalankan kueri pada penyimpanan data peristiwa yang ditentukan sebagai ID dalam pernyataan kueri dan mengirimkan hasil kueri ke bucket S3 tertentu. --query-statementParameter menyediakan query SQL, terlampir dalam tanda kutip tunggal. Parameter opsional termasuk--delivery-s3-uri, untuk mengirimkan hasil kueri ke bucket S3 tertentu. Untuk informasi selengkapnya tentang bahasa kueri yang dapat Anda gunakan di CloudTrail Lake, lihatCloudTrail Kendala Lake SQL.

aws cloudtrail start-query --query-statement 'SELECT eventID, eventTime FROM EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE LIMIT 10' --delivery-s3-uri "s3://aws-cloudtrail-lake-query-results-123456789012-us-east-1"

Responsnya adalah QueryId string. Untuk mendapatkan status kueri, jalankan describe-query menggunakan QueryId nilai yang dikembalikan olehstart-query. Jika kueri berhasil, Anda dapat menjalankan get-query-results untuk mendapatkan hasil.

Keluaran

{ "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE" }
catatan

Kueri yang berjalan lebih dari satu jam mungkin habis. Anda masih bisa mendapatkan sebagian hasil yang diproses sebelum waktu kueri habis.

Jika Anda mengirimkan hasil kueri ke bucket S3 menggunakan --delivery-s3-uri parameter opsional, kebijakan bucket harus memberikan CloudTrail izin untuk mengirimkan hasil kueri ke bucket. Untuk informasi tentang mengedit kebijakan bucket secara manual, lihatKebijakan bucket Amazon S3 untuk hasil kueri CloudTrail Lake.

Dapatkan metadata tentang kueri dengan AWS CLI

Contoh AWS CLI describe-query perintah berikut mendapatkan metadata tentang kueri, termasuk waktu menjalankan kueri dalam milidetik, jumlah peristiwa yang dipindai dan dicocokkan, jumlah total byte yang dipindai, dan status kueri. BytesScannedNilai cocok dengan jumlah byte yang akun Anda ditagih untuk kueri, kecuali kueri masih berjalan. Jika hasil kueri dikirim ke bucket S3, respons juga menyediakan URI S3 dan status pengiriman.

Anda harus menentukan nilai untuk parameter --query-id atau --query-alias parameter. Menentukan --query-alias parameter mengembalikan informasi tentang query terakhir yang dijalankan untuk alias.

aws cloudtrail describe-query --query-id EXAMPLEd-17a7-47c3-a9a1-eccf7EXAMPLE

Berikut ini adalah contoh respons.

{ "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE", "QueryString": "SELECT eventID, eventTime FROM EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE LIMIT 10", "QueryStatus": "RUNNING", "QueryStatistics": { "EventsMatched": 10, "EventsScanned": 1000, "BytesScanned": 35059, "ExecutionTimeInMillis": 3821, "CreationTime": "1598911142" } }

Dapatkan hasil kueri dengan AWS CLI

Contoh AWS CLI get-query-results perintah berikut mendapatkan hasil data peristiwa dari query. Anda harus menentukan yang --query-id dikembalikan oleh start-query perintah. BytesScannedNilai cocok dengan jumlah byte yang akun Anda ditagih untuk kueri, kecuali kueri masih berjalan. Parameter opsional termasuk--max-query-results, untuk menentukan jumlah maksimum hasil yang Anda inginkan perintah untuk kembali pada satu halaman. Jika ada lebih banyak hasil daripada --max-query-results nilai yang Anda tentukan, jalankan perintah lagi dengan menambahkan NextToken nilai yang dikembalikan untuk mendapatkan halaman hasil berikutnya.

aws cloudtrail get-query-results --query-id EXAMPLEd-17a7-47c3-a9a1-eccf7EXAMPLE

Keluaran

{ "QueryStatus": "RUNNING", "QueryStatistics": { "ResultsCount": 244, "TotalResultsCount": 1582, "BytesScanned":27044 }, "QueryResults": [ { "key": "eventName", "value": "StartQuery", } ], "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE", "QueryString": "SELECT eventID, eventTime FROM EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE LIMIT 10", "NextToken": "20add42078135EXAMPLE" }

Cantumkan semua kueri di toko data acara dengan AWS CLI

Contoh AWS CLI list-queries perintah berikut mengembalikan daftar query dan status query pada penyimpanan data peristiwa tertentu selama tujuh hari terakhir. Anda harus menentukan ARN atau akhiran ID dari nilai ARN untuk. --event-data-store Secara opsional, untuk mempersingkat daftar hasil, Anda dapat menentukan rentang waktu, diformat sebagai stempel waktu, dengan menambahkan --start-time dan --end-time parameter, dan nilai. --query-status Nilai yang valid untuk QueryStatus includeQUEUED,RUNNING,FINISHED,FAILED, atauCANCELLED.

list-queriesjuga memiliki parameter pagination opsional. Gunakan --max-results untuk menentukan jumlah maksimum hasil yang Anda inginkan perintah untuk kembali pada satu halaman. Jika ada lebih banyak hasil daripada --max-results nilai yang Anda tentukan, jalankan perintah lagi dengan menambahkan NextToken nilai yang dikembalikan untuk mendapatkan halaman hasil berikutnya.

aws cloudtrail list-queries --event-data-store EXAMPLE-f852-4e8f-8bd1-bcf6cEXAMPLE --query-status CANCELLED --start-time 1598384589 --end-time 1598384602 --max-results 10

Keluaran

{ "Queries": [ { "QueryId": "EXAMPLE2-0add-4207-8135-2d8a4EXAMPLE", "QueryStatus": "CANCELLED", "CreationTime": 1598911142 }, { "QueryId": "EXAMPLE2-4e89-9230-2127-5dr3aEXAMPLE", "QueryStatus": "CANCELLED", "CreationTime": 1598296624 } ], "NextToken": "20add42078135EXAMPLE" }

Batalkan kueri yang sedang berjalan dengan AWS CLI

Contoh AWS CLI cancel-query perintah berikut membatalkan query dengan status. RUNNING Anda harus menentukan nilai untuk --query-id. Saat Anda menjalankancancel-query, status kueri mungkin akan ditampilkan CANCELLED meskipun cancel-query operasi belum selesai.

catatan

Kueri yang dibatalkan dapat dikenakan biaya. Akun Anda masih dikenakan biaya untuk jumlah data yang dipindai sebelum Anda membatalkan kueri.

Berikut ini adalah contoh CLI.

aws cloudtrail cancel-query --query-id EXAMPLEd-17a7-47c3-a9a1-eccf7EXAMPLE

Keluaran

QueryId -> (string) QueryStatus -> (string)