Membuat kueri terjadwal - CloudWatch Log Amazon

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

Membuat kueri terjadwal

Buat kueri terjadwal yang secara otomatis menjalankan kueri Wawasan CloudWatch Log dan memberikan hasil ke tujuan yang Anda pilih.

Prasyarat

Sebelum membuat kueri terjadwal, pastikan Anda memiliki yang berikut:

  • Grup log - Satu atau beberapa grup log yang berisi data yang ingin Anda analisis

  • Eksekusi peran IAM - Peran IAM dengan izin berikut:

    • logs:StartQuery- Izin untuk memulai CloudWatch kueri Wawasan Log

    • logs:GetQueryResults- Izin untuk mengambil hasil kueri

    • logs:DescribeLogGroups- Izin untuk mengakses informasi grup log. Ini hanya diperlukan untuk grup log berbasis awalan untuk penemuan grup log

  • Izin tujuan - Izin IAM tambahan untuk tujuan yang Anda pilih:

    • Untuk tujuan Amazon S3: s3:PutObject

  • Untuk AWS CLI dan penggunaan API - AWS Kredensi yang dikonfigurasi dengan izin untuk memanggil Log CloudWatch APIs

Untuk contoh kebijakan IAM yang mendetail, lihatManajemen identitas dan akses untuk Amazon CloudWatch Logs. Juga perlu dicatat Anda hanya dapat memiliki 1000 kueri terjadwal per akun.

Console
Untuk membuat kueri terjadwal (konsol)
  1. Buka konsol CloudWatch Log di https://us-east-1.console.aws.amazon.com/cloudwatch/rumah? region=us-east-1 # logsV2: logs-wawasan.

  2. Di panel navigasi, pilih Wawasan Logs.

  3. Pilih Buat kueri terjadwal.

  4. Di bagian Definisi kueri:

    1. Untuk bahasa Kueri, pilih bahasa kueri yang akan digunakan dari daftar.

    2. Untuk string Kueri, masukkan kueri Wawasan CloudWatch Log Anda di kotak.

    3. Untuk grup Log, pilih grup log untuk kueri dari daftar.

  5. Di bagian Pengaturan jadwal:

    1. Untuk ekspresi Jadwal, konfigurasikan saat kueri berjalan. Pilih dari opsi yang telah ditentukan atau masukkan ekspresi cron kustom.

    2. Untuk Efektif saat pembuatan, tentukan kapan jadwal menjadi aktif. Pilih untuk segera memulai atau pada tanggal dan waktu tertentu menggunakan YYYY/MM/DD format.

    3. Untuk rentang waktu, tentukan periode lookback untuk setiap eksekusi kueri. Masukkan durasi dalam menit yang menentukan seberapa jauh dari waktu eksekusi ke kueri.

    4. Untuk Lanjutkan tanpa batas waktu, tentukan kapan jadwal berakhir. Pilih untuk menjalankan tanpa batas waktu atau sampai tanggal dan waktu tertentu menggunakan YYYY/MM/DD format.

  6. Konsol menampilkan tiga kueri terjadwal berikutnya berdasarkan konfigurasi Anda, menunjukkan tanggal dan waktu yang tepat di UTC saat kueri akan dijalankan.

  7. Dalam hasil kueri Posting ke S3 - bagian opsional (jika menggunakan tujuan S3):

    1. Untuk URI Amazon S3, masukkan bucket Amazon S3 dan awalan tempat hasil akan disimpan (misalnya,). s3://my-bucket/query-results/

    2. Pilih Lihat Amazon S3 untuk membuka konsol Amazon S3 di tab baru dan verifikasi konfigurasi bucket.

    3. Pilih Jelajahi Amazon S3 untuk memilih lokasi Amazon S3 yang ada menggunakan browser Amazon S3.

  8. Dalam peran IAM untuk memposting hasil kueri ke bagian Amazon S3:

    1. Untuk Pilih peran IAM, pilih peran IAM yang ada dengan kebijakan yang diperlukan, atau pilih buat peran baru di konsol IAM untuk membuat peran baru.

    2. Gunakan bidang pencarian untuk menemukan dan memilih peran IAM yang sesuai dari daftar.

  9. Dalam peran IAM untuk bagian eksekusi kueri terjadwal:

    1. Untuk Pilih peran IAM, pilih peran IAM yang ada dengan kebijakan yang diperlukan, atau pilih buat peran baru di konsol IAM untuk membuat peran baru.

    2. Gunakan bidang pencarian untuk menemukan dan memilih peran IAM yang sesuai dari daftar.

  10. Pilih Buat jadwal untuk membuat kueri terjadwal.

AWS CLI
Untuk membuat query terjadwal (AWS CLI)
  • Gunakan create-scheduled-query perintah untuk membuat kueri terjadwal baru:

    aws logs create-scheduled-query \ --name "ErrorAnalysisQuery" \ --query-language "CWLI" \ --query-string "fields @timestamp, @message | filter @message like /ERROR/ | stats count() by bin(5m)" \ --schedule-expression "cron(8 * * * ? *)" \ --execution-role-arn "arn:aws:iam::123456789012:role/CloudWatchLogsScheduledQueryRole" \ --log-group-identifiers "/aws/lambda/my-function" "/aws/apigateway/my-api" \ --state "ENABLED"
API
Untuk membuat kueri terjadwal (API)
  • Gunakan CreateScheduledQuery tindakan untuk membuat kueri terjadwal baru. Contoh berikut membuat kueri terjadwal yang berjalan setiap jam:

    { "name": "ErrorAnalysisQuery", "queryLanguage": "CWLI", "queryString": "fields @timestamp, @message | filter @message like /ERROR/ | stats count() by bin(5m)", "scheduleExpression": "cron(8 * * * ? *)", "executionRoleArn": "arn:aws:iam::123456789012:role/CloudWatchLogsScheduledQueryRole", "logGroupIdentifiers": ["/aws/lambda/my-function", "/aws/apigateway/my-api"], "state": "ENABLED" }

Setelah membuat kueri terjadwal, Anda dapat melihat dan mengelolanya dari halaman Kueri terjadwal dan menggunakan ListScheduledQueries API, yang menampilkan semua kueri terjadwal dengan nama, tanggal pembuatan, status proses terakhir, waktu pemicu terakhir, dan frekuensi pengulangan.