Memvalidasi alur peristiwa log - CloudWatch Log Amazon

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

Memvalidasi alur peristiwa log

Setelah Anda membuat filter langganan, CloudWatch Logs meneruskan semua log acara masuk yang cocok dengan pola filter ke aliran Kinesis yang dirangkum dalam pengaliran tujuan yang disebut "RecipientStream”. Pemilik tujuan dapat memverifikasi bahwa ini terjadi dengan menggunakan get-shard-iterator perintah aws kinesis untuk mengambil serpihan Kinesis, dan menggunakan perintah aws kinesis get-records untuk mengambil beberapa catatan Kinesis:

aws kinesis get-shard-iterator \ --stream-name RecipientStream \ --shard-id shardId-000000000000 \ --shard-iterator-type TRIM_HORIZON { "ShardIterator": "AAAAAAAAAAFGU/kLvNggvndHq2UIFOw5PZc6F01s3e3afsSscRM70JSbjIefg2ub07nk1y6CDxYR1UoGHJNP4m4NFUetzfL+wev+e2P4djJg4L9wmXKvQYoE+rMUiFq+p4Cn3IgvqOb5dRA0yybNdRcdzvnC35KQANoHzzahKdRGb9v4scv+3vaq+f+OIK8zM5My8ID+g6rMo7UKWeI4+IWiKEXAMPLE" } aws kinesis get-records \ --limit 10 \ --shard-iterator "AAAAAAAAAAFGU/kLvNggvndHq2UIFOw5PZc6F01s3e3afsSscRM70JSbjIefg2ub07nk1y6CDxYR1UoGHJNP4m4NFUetzfL+wev+e2P4djJg4L9wmXKvQYoE+rMUiFq+p4Cn3IgvqOb5dRA0yybNdRcdzvnC35KQANoHzzahKdRGb9v4scv+3vaq+f+OIK8zM5My8ID+g6rMo7UKWeI4+IWiKEXAMPLE"
catatan

Anda mungkin perlu menjalankan ulang perintah get-records beberapa kali sebelum Kinesis mulai mengembalikan data.

Anda akan melihat respons dengan array catatan Kinesis. Atribut data dalam catatan Kinesis dikompresi dalam format gzip dan kemudian dienkode dengan base64. Anda dapat memeriksa data mentah dari baris perintah menggunakan perintah Unix berikut:

echo -n "<Content of Data>" | base64 -d | zcat

Data yang sudah didekode dengan base64 dan didekompresi diformat sebagai JSON dengan struktur berikut:

{ "owner": "111111111111", "logGroup": "CloudTrail/logs", "logStream": "111111111111_CloudTrail/logs_us-east-1", "subscriptionFilters": [ "RecipientStream" ], "messageType": "DATA_MESSAGE", "logEvents": [ { "id": "3195310660696698337880902507980421114328961542429EXAMPLE", "timestamp": 1432826855000, "message": "{\"eventVersion\":\"1.03\",\"userIdentity\":{\"type\":\"Root\"}" }, { "id": "3195310660696698337880902507980421114328961542429EXAMPLE", "timestamp": 1432826855000, "message": "{\"eventVersion\":\"1.03\",\"userIdentity\":{\"type\":\"Root\"}" }, { "id": "3195310660696698337880902507980421114328961542429EXAMPLE", "timestamp": 1432826855000, "message": "{\"eventVersion\":\"1.03\",\"userIdentity\":{\"type\":\"Root\"}" } ] }

Elemen kunci dalam struktur data ini adalah sebagai berikut:

owner

ID Akun AWS dari data log asal.

logGroup

Nama grup log dari data log asal.

logStream

Nama pengaliran log dari data log asal.

subscriptionFilters

Daftar nama filter langganan yang cocok dengan data log asal.

messageType

Pesan data menggunakan tipe “DATA_MESSAGE”. Terkadang CloudWatch Logs dapat memancarkan catatan Kinesis dengan tipe “CONTROL_MESSAGE”, terutama untuk memeriksa apakah tujuan dapat dijangkau.

logEvents

Data log yang sebenarnya, direpresentasikan sebagai array catatan log acara. Properti ID adalah pengenal unik untuk setiap log acara.