Mencatat panggilan API CodePipeline dengan AWS CloudTrail - AWS CodePipeline

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

Mencatat panggilan API CodePipeline dengan AWS CloudTrail

AWS CodePipelineterintegrasi denganAWS CloudTrail, layanan yang menyediakan catatan tindakan yang diambil oleh pengguna, peran, atau Layanan AWS diCodePipeline;. CloudTrailmerekam semua panggilan API untuk CodePipeline sebagai peristiwa. Panggilan yang direkam mencakup panggilan dari CodePipeline konsol dan panggilan kode ke operasi API CodePipeline ini. Jika Anda membuat jejak, Anda dapat mengaktifkan pengiriman berkelanjutan dari CloudTrail kejadian ke bucket Amazon S3, termasuk kejadian untukCodePipeline. Jika Anda tidak membuat konfigurasi jejak, Anda masih dapat melihat kejadian terbaru dalam konsol CloudTrail di Riwayat peristiwa. Menggunakan informasi yang dikumpulkan oleh CloudTrail, Anda dapat menentukan permintaan yang dibuat ke CodePipeline, alamat IP tempat permintaan tersebut dibuat, pembuat membuat permintaan, waktu permintaan dibuat, dan detail lainnya.

Untuk mempelajari lebih lanjutCloudTrail, lihat Panduan AWS CloudTrail Pengguna.

Informasi CodePipeline di CloudTrail

CloudTraildiaktifkan pada Anda Akun AWS saat Anda membuat akun tersebut. Ketika aktivitas terjadi diCodePipeline, aktivitas tersebut dicatat dalam CloudTrail peristiwa bersama peristiwa lainnya di Riwayat Layanan AWS peristiwa. Anda dapat melihat, mencari, dan mengunduh peristiwa terbaru di akun AWS Anda. Untuk informasi lain, lihat Melihat Peristiwa dengan Riwayat Peristiwa CloudTrail.

Untuk catatan berkelanjutan tentang peristiwa di AndaAkun AWS, termasuk peristiwa untukCodePipeline, buat jejak. Jejak memungkinkan CloudTrail untuk mengirim berkas log ke bucket Amazon S3. Secara default, saat Anda membuat jejak di dalam konsol tersebut, jejak diterapkan ke semua Wilayah AWS. Jejak mencatat peristiwa dari semua Wilayah di partisi AWS dan mengirimkan file log ke bucket Amazon S3 yang Anda tentukan. Selain itu, Anda dapat mengonfigurasi lainnya Layanan AWS untuk menganalisis lebih lanjut dan bertindak berdasarkan data peristiwa yang dikumpulkan di CloudTrail log. Untuk informasi selengkapnya, lihat yang berikut:

Semua CodePipeline tindakan dicatat oleh CloudTrail dan didokumentasikan dalam Referensi CodePipeline API. Misalnya, panggilan untuk tindakan CreatePipeline, GetPipelineExecution, dan UpdatePipeline menghasilkan entri di berkas log CloudTrail.

Setiap entri peristiwa atau log berisi informasi tentang siapa yang membuat permintaan tersebut. Informasi identitas membantu Anda menentukan berikut ini:

  • Jika permintaan tersebut dibuat dengan kredensial root atau AWS Identity and Access Management (IAM).

  • Baik permintaan tersebut dibuat dengan kredensial keamanan sementara untuk peran atau pengguna gabungan.

  • Apakah permintaan dibuat oleh yang lainLayanan AWS.

Untuk informasi lain, lihat Elemen userIdentity CloudTrail.

Memahami CodePipeline entri file log

Jejak adalah konfigurasi yang memungkinkan pengiriman peristiwa sebagai berkas log ke bucket Amazon S3 yang telah Anda tentukan. Berkas log CloudTrail berisi satu atau beberapa entri log. Peristuwa mewakili satu permintaan dari sumber apa pun dan mencakup informasi tentang tindakan yang diminta, tanggal dan waktu tindakan, parameter permintaan, dan sebagainya. Berkas log CloudTrail bukan jejak tumpukan terurut dari panggilan API publik, sehingga berkas tersebut tidak muncul dalam urutan tertentu.

Contoh berikut menunjukkan entri CloudTrail log untuk peristiwa pipeline pembaruan, di mana pipeline bernama MyFirstPipeline telah diedit oleh pengguna bernama JaneDoe - CodePipeline dengan ID akun 80398EXAMPLE. Pengguna mengubah nama tahap sumber pipa dari Source keMySourceStage. Karena baik requestParameters dan responseElements elemen dalam CloudTrail log berisi seluruh struktur pipa yang diedit, elemen-elemen tersebut telah disingkat dalam contoh berikut. Penekanan telah ditambahkan ke requestParameters bagian pipa di mana perubahan terjadi, nomor versi sebelumnya dari pipa, dan responseElements bagian, yang menunjukkan nomor versi bertambah 1. Bagian yang diedit ditandai dengan elips (...) untuk menggambarkan di mana lebih banyak data muncul dalam entri log nyata.

{ "eventVersion":"1.03", "userIdentity": { "type":"IAMUser", "principalId":"AKIAI44QH8DHBEXAMPLE", "arn":"arn:aws:iam::80398EXAMPLE:user/JaneDoe-CodePipeline", "accountId":"80398EXAMPLE", "accessKeyId":"AKIAIOSFODNN7EXAMPLE", "userName":"JaneDoe-CodePipeline", "sessionContext": { "attributes":{ "mfaAuthenticated":"false", "creationDate":"2015-06-17T14:44:03Z" } }, "invokedBy":"signin.amazonaws.com"}, "eventTime":"2015-06-17T19:12:20Z", "eventSource":"codepipeline.amazonaws.com", "eventName":"UpdatePipeline", "awsRegion":"us-east-2", "sourceIPAddress":"192.0.2.64", "userAgent":"signin.amazonaws.com", "requestParameters":{ "pipeline":{ "version":1, "roleArn":"arn:aws:iam::80398EXAMPLE:role/CodePipeline_Service_Role", "name":"MyFirstPipeline", "stages":[ { "actions":[ { "name":"MySourceStage", "actionType":{ "owner":"AWS", "version":"1", "category":"Source", "provider":"S3" }, "inputArtifacts":[], "outputArtifacts":[ {"name":"MyApp"} ], "runOrder":1, "configuration":{ "S3Bucket":"awscodepipeline-demobucket-example-date", "S3ObjectKey":"sampleapp_linux.zip" } } ], "name":"Source" }, (...) }, "responseElements":{ "pipeline":{ "version":2, (...) }, "requestID":"2c4af5c9-7ce8-EXAMPLE", "eventID":""c53dbd42-This-Is-An-Example"", "eventType":"AwsApiCall", "recipientAccountId":"80398EXAMPLE" } ] }