CreateEventSourceMapping - AWS Lambda

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

CreateEventSourceMapping

Membuat pemetaan antara sumber peristiwa dan fungsi AWS Lambda. Lambda membaca item dari sumber acara dan memanggil fungsi.

Untuk detail tentang cara mengonfigurasi sumber acara yang berbeda, lihat topik berikut.

Opsi penanganan kesalahan berikut hanya tersedia untuk sumber aliran (DynamoDB dan Kinesis):

  • BisectBatchOnFunctionError— Jika fungsi mengembalikan kesalahan, pisahkan batch menjadi dua dan coba lagi.

  • DestinationConfig— Kirim catatan yang dibuang ke antrian Amazon SQS atau topik Amazon SNS.

  • MaximumRecordAgeInSeconds— Buang catatan yang lebih tua dari usia yang ditentukan. Nilai default adalah tak terhingga (-1). Ketika diatur ke tak terhingga (-1), catatan yang gagal dicoba lagi sampai catatan berakhir

  • MaximumRetryAttempts— Buang catatan setelah jumlah percobaan ulang yang ditentukan. Nilai default adalah tak terhingga (-1). Ketika diatur ke tak terhingga (-1), catatan yang gagal dicoba lagi sampai catatan berakhir.

  • ParallelizationFactor— Memproses beberapa batch dari setiap pecahan secara bersamaan.

Untuk informasi tentang parameter konfigurasi yang berlaku untuk setiap sumber peristiwa, lihat topik berikut.

Minta Sintaks

POST /2015-03-31/event-source-mappings/ HTTP/1.1 Content-type: application/json { "AmazonManagedKafkaEventSourceConfig": { "ConsumerGroupId": "string" }, "BatchSize": number, "BisectBatchOnFunctionError": boolean, "DestinationConfig": { "OnFailure": { "Destination": "string" }, "OnSuccess": { "Destination": "string" } }, "DocumentDBEventSourceConfig": { "CollectionName": "string", "DatabaseName": "string", "FullDocument": "string" }, "Enabled": boolean, "EventSourceArn": "string", "FilterCriteria": { "Filters": [ { "Pattern": "string" } ] }, "FunctionName": "string", "FunctionResponseTypes": [ "string" ], "MaximumBatchingWindowInSeconds": number, "MaximumRecordAgeInSeconds": number, "MaximumRetryAttempts": number, "ParallelizationFactor": number, "Queues": [ "string" ], "ScalingConfig": { "MaximumConcurrency": number }, "SelfManagedEventSource": { "Endpoints": { "string" : [ "string" ] } }, "SelfManagedKafkaEventSourceConfig": { "ConsumerGroupId": "string" }, "SourceAccessConfigurations": [ { "Type": "string", "URI": "string" } ], "StartingPosition": "string", "StartingPositionTimestamp": number, "Topics": [ "string" ], "TumblingWindowInSeconds": number }

Parameter Permintaan URI

Permintaan tidak menggunakan parameter URI apa pun.

Isi Permintaan

Permintaan menerima data berikut dalam format JSON.

AmazonManagedKafkaEventSourceConfig

Pengaturan konfigurasi khusus untuk sumber peristiwa Amazon Managed Streaming for Apache Kafka (Amazon MSK).

Tipe: Objek AmazonManagedKafkaEventSourceConfig

Diperlukan: Tidak

BatchSize

Jumlah maksimum rekaman di setiap batch yang Lambda tarik dari aliran atau antrian Anda dan dikirim ke fungsi Anda. Lambda meneruskan semua catatan dalam batch ke fungsi dalam satu panggilan, hingga batas payload untuk pemanggilan sinkron (6 MB).

  • Amazon Kinesis - Default 100. Maks. 10.000.

  • Amazon DynamoDB Streams - Default 100. Maks. 10.000.

  • Layanan Antrian Sederhana Amazon - Default 10. Untuk antrean standar maks. adalah 10.000. Untuk antrean FIFO, maks. adalah 10.

  • Amazon Managed Streaming untuk Apache Kafka - Default 100. Maks. 10.000.

  • Apache Kafka yang dikelola sendiri - Default 100. Maks. 10.000.

  • Amazon MQ (ActiveMQ dan RabbitMQ) - Default 100. Maks. 10.000.

  • DocumentDB - Default 100. Maks. 10.000.

Tipe: Integer

Rentang yang Valid: Nilai minimum 1. Nilai maksimum 10000.

Diperlukan: Tidak

BisectBatchOnFunctionError

(Kinesis dan DynamoDB Streams saja) Jika fungsi mengembalikan kesalahan, pisahkan batch menjadi dua dan coba lagi.

Tipe: Boolean

Wajib: Tidak

DestinationConfig

(Kinesis, DynamoDB Streams, Amazon MSK, dan Kafka yang dikelola sendiri saja) Objek konfigurasi yang menentukan tujuan suatu peristiwa setelah Lambda memprosesnya.

Tipe: Objek DestinationConfig

Diperlukan: Tidak

DocumentDBEventSourceConfig

Pengaturan konfigurasi khusus untuk sumber acara DocumentDB.

Tipe: Objek DocumentDBEventSourceConfig

Diperlukan: Tidak

Enabled

Jika benar, pemetaan sumber peristiwa aktif. Ketika salah, Lambda menghentikan pemungutan suara dan doa.

Bawaan: BETUL

Tipe: Boolean

Wajib: Tidak

EventSourceArn

Amazon Resource Name (ARN) sumber peristiwa.

Jenis: String

Pola: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)

Diperlukan: Tidak

FilterCriteria

Objek yang mendefinisikan kriteria filter yang menentukan apakah Lambda harus memproses suatu peristiwa. Untuk informasi selengkapnya, lihat Pemfilteran acara Lambda.

Tipe: Objek FilterCriteria

Diperlukan: Tidak

FunctionName

Nama fungsi Lambda.

Format nama
  • Nama fungsiMyFunction.

  • Fungsi ARN —. arn:aws:lambda:us-west-2:123456789012:function:MyFunction

  • Versi atau Alias arn:aws:lambda:us-west-2:123456789012:function:MyFunction:PROD ARN —.

  • ARN Sebagian —. 123456789012:function:MyFunction

Batas panjang hanya berlaku untuk ARN penuh. Jika Anda hanya menentukan nama fungsi, panjang nama dibatasi hingga 64 karakter.

Tipe: String

Panjang Batasan: Panjang minimum 1. Panjang maksimum 140.

Pola: (arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?

Diperlukan: Ya

FunctionResponseTypes

(Kinesis, DynamoDB Streams, dan Amazon SQS) Daftar enum tipe respons saat ini diterapkan pada pemetaan sumber peristiwa.

Tipe: Array string

Anggota Array: Jumlah minimum 0 item. Jumlah maksimum 1 item.

Nilai yang Valid: ReportBatchItemFailures

Diperlukan: Tidak

MaximumBatchingWindowInSeconds

Jumlah waktu maksimum, dalam hitungan detik, yang dihabiskan Lambda untuk mengumpulkan catatan sebelum menjalankan fungsi. Anda dapat mengonfigurasi MaximumBatchingWindowInSeconds ke nilai apa pun dari 0 detik hingga 300 detik dengan penambahan detik.

Untuk aliran dan sumber peristiwa Amazon SQS, jendela batching default adalah 0 detik. Untuk sumber acara Amazon MSK, Apache Kafka yang dikelola sendiri, Amazon MQ, dan DocumentDB, jendela batching default adalah 500 ms. Perhatikan bahwa karena Anda hanya dapat mengubah MaximumBatchingWindowInSeconds dalam penambahan detik, Anda tidak dapat kembali ke jendela batching default 500 ms setelah Anda mengubahnya. Untuk mengembalikan jendela batching default, Anda harus membuat pemetaan sumber peristiwa baru.

Setelan terkait: Untuk aliran dan sumber peristiwa Amazon SQS, bila Anda BatchSize menyetel ke nilai yang lebih besar dari 10, Anda harus MaximumBatchingWindowInSeconds menyetel ke setidaknya 1.

Tipe: Bilangan Bulat

Rentang yang Valid: Nilai minimum 0. Nilai maksimum 300.

Diperlukan: Tidak

MaximumRecordAgeInSeconds

(Hanya Kinesis dan DynamoDB Streams) Buang rekaman yang lebih tua dari usia yang ditentukan. Nilai default adalah tak terhingga (-1).

Tipe: Integer

Rentang yang Valid: Nilai minimum -1. Nilai maksimum 604800.

Diperlukan: Tidak

MaximumRetryAttempts

(Hanya Kinesis dan DynamoDB Streams) Buang catatan setelah jumlah percobaan ulang yang ditentukan. Nilai default adalah tak terhingga (-1). Ketika diatur ke tak terhingga (-1), catatan yang gagal dicoba lagi sampai catatan berakhir.

Jenis: Integer

Rentang yang Valid: Nilai minimum -1. Nilai maksimum 10000.

Diperlukan: Tidak

ParallelizationFactor

(Kinesis dan DynamoDB Streams saja) Jumlah batch yang akan diproses dari setiap pecahan secara bersamaan.

Jenis: Integer

Rentang yang Valid: Nilai minimum 1. Nilai maksimum 10.

Diperlukan: Tidak

Queues

(MQ) Nama antrean tujuan broker Amazon MQ yang akan digunakan.

Tipe: Array string.

Anggota Array: Jumlah tetap 1 item.

Panjang Batasan: Panjang minimum 1. Panjang maksimum 1000.

Pola: [\s\S]*

Diperlukan: Tidak

ScalingConfig

(Hanya Amazon SQS) Konfigurasi penskalaan untuk sumber peristiwa. Untuk informasi selengkapnya, lihat Mengonfigurasi konkurensi maksimum untuk sumber peristiwa Amazon SQS.

Tipe: Objek ScalingConfig

Diperlukan: Tidak

SelfManagedEventSource

Cluster Apache Kafka yang dikelola sendiri untuk menerima catatan dari.

Tipe: Objek SelfManagedEventSource

Diperlukan: Tidak

SelfManagedKafkaEventSourceConfig

Pengaturan konfigurasi khusus untuk sumber acara Apache Kafka yang dikelola sendiri.

Tipe: Objek SelfManagedKafkaEventSourceConfig

Diperlukan: Tidak

SourceAccessConfigurations

Array protokol autentikasi atau komponen VPC yang diperlukan untuk mengamankan sumber peristiwa Anda.

Tipe: Array objek SourceAccessConfiguration

Anggota Array: Jumlah minimum 0 item. Jumlah maksimum 22 item.

Diperlukan: Tidak

StartingPosition

Posisi dalam pengaliran tempat untuk mulai membaca. Diperlukan untuk sumber acara Amazon Kinesis dan Amazon DynamoDB Stream. AT_TIMESTAMPdidukung hanya untuk aliran Amazon Kinesis, Amazon DocumentDB, Amazon MSK, dan Apache Kafka yang dikelola sendiri.

Jenis: String

Nilai yang Valid: TRIM_HORIZON | LATEST | AT_TIMESTAMP

Diperlukan: Tidak

StartingPositionTimestamp

Dengan StartingPosition diatur keAT_TIMESTAMP, waktu untuk mulai membaca, dalam detik waktu Unix. StartingPositionTimestamptidak bisa di masa depan.

Tipe: Timestamp

Diperlukan: Tidak

Topics

Nama topik Kafka.

Tipe: Array string.

Anggota Array: Jumlah tetap 1 item.

Panjang Batasan: Panjang minimum 1. Panjang maksimum 249.

Pola: ^[^.]([a-zA-Z0-9\-_.]+)

Diperlukan: Tidak

TumblingWindowInSeconds

(Hanya Kinesis dan DynamoDB Streams) Durasi dalam detik jendela pemrosesan untuk sumber peristiwa DynamoDB dan Kinesis Streams. Nilai 0 detik menunjukkan tidak ada jendela jatuh.

Tipe: Bilangan Bulat

Rentang yang Valid: Nilai minimum 0. Nilai maksimum 900.

Wajib: Tidak

Sintaksis Respons

HTTP/1.1 202 Content-type: application/json { "AmazonManagedKafkaEventSourceConfig": { "ConsumerGroupId": "string" }, "BatchSize": number, "BisectBatchOnFunctionError": boolean, "DestinationConfig": { "OnFailure": { "Destination": "string" }, "OnSuccess": { "Destination": "string" } }, "DocumentDBEventSourceConfig": { "CollectionName": "string", "DatabaseName": "string", "FullDocument": "string" }, "EventSourceArn": "string", "FilterCriteria": { "Filters": [ { "Pattern": "string" } ] }, "FunctionArn": "string", "FunctionResponseTypes": [ "string" ], "LastModified": number, "LastProcessingResult": "string", "MaximumBatchingWindowInSeconds": number, "MaximumRecordAgeInSeconds": number, "MaximumRetryAttempts": number, "ParallelizationFactor": number, "Queues": [ "string" ], "ScalingConfig": { "MaximumConcurrency": number }, "SelfManagedEventSource": { "Endpoints": { "string" : [ "string" ] } }, "SelfManagedKafkaEventSourceConfig": { "ConsumerGroupId": "string" }, "SourceAccessConfigurations": [ { "Type": "string", "URI": "string" } ], "StartingPosition": "string", "StartingPositionTimestamp": number, "State": "string", "StateTransitionReason": "string", "Topics": [ "string" ], "TumblingWindowInSeconds": number, "UUID": "string" }

Elemen Respons

Jika tindakan berhasil, layanan mengirimkan kembali respons HTTP 202.

Layanan mengembalikan data berikut dalam format JSON.

AmazonManagedKafkaEventSourceConfig

Pengaturan konfigurasi khusus untuk sumber peristiwa Amazon Managed Streaming for Apache Kafka (Amazon MSK).

Tipe: Objek AmazonManagedKafkaEventSourceConfig

BatchSize

Jumlah maksimum rekaman di setiap batch yang Lambda tarik dari aliran atau antrian Anda dan dikirim ke fungsi Anda. Lambda meneruskan semua catatan dalam batch ke fungsi dalam satu panggilan, hingga batas payload untuk pemanggilan sinkron (6 MB).

Nilai default: Bervariasi berdasarkan layanan. Untuk Amazon SQS, defaultnya adalah 10. Untuk semua layanan lainnya, defaultnya adalah 100.

Pengaturan terkait: Ketika Anda mengatur BatchSize ke nilai yang lebih besar dari 10, Anda harus mengatur MaximumBatchingWindowInSeconds ke setidaknya 1.

Jenis: Integer

Rentang yang Valid: Nilai minimum 1. Nilai maksimum 10000.

BisectBatchOnFunctionError

(Kinesis dan DynamoDB Streams saja) Jika fungsi mengembalikan kesalahan, pisahkan batch menjadi dua dan coba lagi. Nilai default salah.

Jenis: Boolean

DestinationConfig

(Kinesis, DynamoDB Streams, Amazon MSK, dan sumber peristiwa Apache Kafka yang dikelola sendiri saja) Objek konfigurasi yang menentukan tujuan suatu peristiwa setelah Lambda memprosesnya.

Tipe: Objek DestinationConfig

DocumentDBEventSourceConfig

Pengaturan konfigurasi khusus untuk sumber acara DocumentDB.

Tipe: Objek DocumentDBEventSourceConfig

EventSourceArn

Amazon Resource Name (ARN) sumber peristiwa.

Tipe: String

Pola: arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\-])+:([a-z]{2}(-gov)?-[a-z]+-\d{1})?:(\d{12})?:(.*)

FilterCriteria

Objek yang mendefinisikan kriteria filter yang menentukan apakah Lambda harus memproses suatu peristiwa. Untuk informasi selengkapnya, lihat Pemfilteran acara Lambda.

Tipe: Objek FilterCriteria

FunctionArn

ARN fungsi Lambda.

Tipe: String

Pola: arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?

FunctionResponseTypes

(Kinesis, DynamoDB Streams, dan Amazon SQS) Daftar enum tipe respons saat ini diterapkan pada pemetaan sumber peristiwa.

Tipe: Array string

Anggota Array: Jumlah minimum 0 item. Jumlah maksimum 1 item.

Nilai yang Valid: ReportBatchItemFailures

LastModified

Tanggal pemetaan sumber peristiwa terakhir diperbarui atau statusnya berubah, dalam detik waktu Unix.

Tipe: Timestamp

LastProcessingResult

Hasil pemanggilan Lambda terakhir dari fungsi Anda.

Jenis: String

MaximumBatchingWindowInSeconds

Jumlah waktu maksimum, dalam hitungan detik, yang dihabiskan Lambda untuk mengumpulkan catatan sebelum menjalankan fungsi. Anda dapat mengonfigurasi MaximumBatchingWindowInSeconds ke nilai apa pun dari 0 detik hingga 300 detik dengan penambahan detik.

Untuk aliran dan sumber peristiwa Amazon SQS, jendela batching default adalah 0 detik. Untuk sumber acara Amazon MSK, Apache Kafka yang dikelola sendiri, Amazon MQ, dan DocumentDB, jendela batching default adalah 500 ms. Perhatikan bahwa karena Anda hanya dapat mengubah MaximumBatchingWindowInSeconds dalam penambahan detik, Anda tidak dapat kembali ke jendela batching default 500 ms setelah Anda mengubahnya. Untuk mengembalikan jendela batching default, Anda harus membuat pemetaan sumber peristiwa baru.

Setelan terkait: Untuk aliran dan sumber peristiwa Amazon SQS, bila Anda BatchSize menyetel ke nilai yang lebih besar dari 10, Anda harus MaximumBatchingWindowInSeconds menyetel ke setidaknya 1.

Tipe: Bilangan Bulat

Rentang yang Valid: Nilai minimum 0. Nilai maksimum 300.

MaximumRecordAgeInSeconds

(Hanya Kinesis dan DynamoDB Streams) Buang rekaman yang lebih tua dari usia yang ditentukan. Nilai defaultnya adalah -1, yang menetapkan usia maksimum hingga tak terbatas. Ketika nilai diatur ke tak terhingga, Lambda tidak pernah menghapus catatan lama.

catatan

Nilai valid minimum untuk usia rekor maksimum adalah 60-an. Meskipun nilai kurang dari 60 dan lebih besar dari -1 termasuk dalam rentang absolut parameter, mereka tidak diperbolehkan

Jenis: Integer

Rentang yang Valid: Nilai minimum -1. Nilai maksimum 604800.

MaximumRetryAttempts

(Hanya Kinesis dan DynamoDB Streams) Buang catatan setelah jumlah percobaan ulang yang ditentukan. Nilai default adalah -1, yang menetapkan jumlah maksimum coba lagi ke tak terhingga. Kapan tak MaximumRetryAttempts terbatas, Lambda mencoba kembali catatan yang gagal sampai catatan berakhir di sumber acara.

Jenis: Integer

Rentang yang Valid: Nilai minimum -1. Nilai maksimum 10000.

ParallelizationFactor

(Kinesis dan DynamoDB Streams saja) Jumlah batch yang akan diproses secara bersamaan dari setiap pecahan. Nilai default adalah 1.

Tipe: Integer

Rentang yang Valid: Nilai minimum 1. Nilai maksimum 10.

Queues

(Amazon MQ) Nama antrean tujuan broker Amazon MQ yang akan digunakan.

Tipe: Array string

Anggota Array: Jumlah tetap 1 item.

Panjang Batasan: Panjang minimum 1. Panjang maksimum 1000.

Pola: [\s\S]*

ScalingConfig

(Hanya Amazon SQS) Konfigurasi penskalaan untuk sumber peristiwa. Untuk informasi selengkapnya, lihat Mengonfigurasi konkurensi maksimum untuk sumber peristiwa Amazon SQS.

Tipe: Objek ScalingConfig

SelfManagedEventSource

Klaster dikelola sendiri Apache Kafka untuk sumber peristiwa Anda.

Tipe: Objek SelfManagedEventSource

SelfManagedKafkaEventSourceConfig

Pengaturan konfigurasi khusus untuk sumber acara Apache Kafka yang dikelola sendiri.

Tipe: Objek SelfManagedKafkaEventSourceConfig

SourceAccessConfigurations

Susunan protokol autentikasi, komponen VPC, atau host virtual untuk mengamankan dan menentukan sumber peristiwa Anda.

Tipe: Array objek SourceAccessConfiguration

Anggota Array: Jumlah minimum 0 item. Jumlah maksimum 22 item.

StartingPosition

Posisi dalam pengaliran tempat untuk mulai membaca. Diperlukan untuk sumber acara Amazon Kinesis dan Amazon DynamoDB Stream. AT_TIMESTAMPdidukung hanya untuk aliran Amazon Kinesis, Amazon DocumentDB, Amazon MSK, dan Apache Kafka yang dikelola sendiri.

Jenis: String

Nilai yang Valid: TRIM_HORIZON | LATEST | AT_TIMESTAMP

StartingPositionTimestamp

Dengan StartingPosition diatur keAT_TIMESTAMP, waktu untuk mulai membaca, dalam detik waktu Unix. StartingPositionTimestamptidak bisa di masa depan.

Tipe: Timestamp

State

Status pemetaan sumber peristiwa. Status bisa menjadi salah satu dari berikut: Creating, Enabling, Enabled, Disabling, Disabled, Updating, atau Deleting.

Jenis: String

StateTransitionReason

Menunjukkan apakah pengguna atau Lambda membuat perubahan terakhir pada pemetaan sumber peristiwa.

Jenis: String

Topics

Nama topik Kafka.

Tipe: Array string.

Anggota Array: Jumlah tetap 1 item.

Panjang Batasan: Panjang minimum 1. Panjang maksimum 249.

Pola: ^[^.]([a-zA-Z0-9\-_.]+)

TumblingWindowInSeconds

(Hanya Kinesis dan DynamoDB Streams) Durasi dalam detik jendela pemrosesan untuk sumber peristiwa DynamoDB dan Kinesis Streams. Nilai 0 detik menunjukkan tidak ada jendela jatuh.

Tipe: Bilangan Bulat

Rentang yang Valid: Nilai minimum 0. Nilai maksimum 900.

UUID

Pengidentifikasi pemetaan sumber peristiwa.

Jenis: String

Kesalahan

Untuk informasi tentang kesalahan yang umum untuk semua tindakan, lihat Kesalahan Umum.

InvalidParameterValueException

Salah satu parameter dalam permintaan tidak valid.

Kode Status HTTP: 400

ResourceConflictException

Sumber daya sudah ada, atau operasi lain sedang berlangsung.

Kode Status HTTP: 409

ResourceNotFoundException

Sumber daya yang ditentukan dalam permintaan tidak ada.

Kode Status HTTP: 404

ServiceException

Layanan AWS Lambda mengalami kesalahan internal.

Kode Status HTTP: 500

TooManyRequestsException

Batas throughput permintaan terlampaui. Untuk informasi lebih lanjut, lihat Kuota Lambda.

Kode Status HTTP: 429

Lihat Juga

Untuk informasi selengkapnya tentang penggunaan API ini di salah satu AWS SDK khusus bahasa, lihat berikut ini: