Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS::Serverless::Function
Membuat AWS Lambda fungsi, peran eksekusi AWS Identity and Access Management (IAM), dan pemetaan sumber peristiwa yang memicu fungsi.
AWS::Serverless::FunctionResource juga mendukung atribut Metadata resource, sehingga Anda dapat menginstruksikan AWS SAM untuk membuat runtime kustom yang dibutuhkan aplikasi Anda. Untuk informasi selengkapnya tentang membangun waktu aktif kustom, lihat Membangun fungsi Lambda dengan runtime khusus di AWS SAM.
catatan
Ketika Anda menyebarkan ke AWS CloudFormation, AWS SAM mengubah AWS SAM sumber daya Anda menjadi CloudFormation sumber daya. Untuk informasi selengkapnya, lihat CloudFormation Sumber daya yang dihasilkan untuk AWS SAM.
Sintaksis
Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.
YAML
Type: AWS::Serverless::Function Properties: Architectures:ListAssumeRolePolicyDocument:JSONAutoPublishAlias:StringAutoPublishAliasAllProperties:BooleanAutoPublishCodeSha256:StringCodeSigningConfigArn:StringCodeUri:String | FunctionCodeDeadLetterQueue:Map | DeadLetterQueueDeploymentPreference:DeploymentPreferenceDescription:StringEnvironment:EnvironmentEphemeralStorage:EphemeralStorageEventInvokeConfig:EventInvokeConfigurationEvents:EventSourceFileSystemConfigs:ListFunctionName:StringFunctionUrlConfig:FunctionUrlConfigHandler:StringImageConfig:ImageConfigImageUri:StringInlineCode:StringKmsKeyArn:StringLayers:ListLoggingConfig:LoggingConfigMemorySize:IntegerPackageType:StringPermissionsBoundary:StringPolicies:String | List | MapPropagateTags:BooleanProvisionedConcurrencyConfig:ProvisionedConcurrencyConfigRecursiveLoop:StringReservedConcurrentExecutions:IntegerRole:StringRolePath:StringRuntime:StringRuntimeManagementConfig:RuntimeManagementConfigSnapStart:SnapStartSourceKMSKeyArn:StringTags:MapTimeout:IntegerTracing:StringVersionDescription:StringVpcConfig:VpcConfig
Properti
-
Architectures -
Arsitektur set instruksi untuk fungsi tersebut.
Untuk informasi selengkapnya tentang properti ini, lihat Arsitektur set instruksi Lambda di Panduan Pengembang.AWS Lambda
Nilai yang valid: Salah satu
x86_64atauarm64Tipe: Daftar
Wajib: Tidak
Default:
x86_64CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
ArchitecturespropertiAWS::Lambda::Functionsumber daya. -
AssumeRolePolicyDocument -
Menambahkan AssumeRolePolicyDocument untuk default yang dibuat
Roleuntuk fungsi ini. Jika properti ini tidak ditentukan, AWS SAM menambahkan peran asumsi default untuk fungsi ini.Tipe: JSON
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini mirip dengan
AssumeRolePolicyDocumentpropertiAWS::IAM::Rolesumber daya. AWS SAM menambahkan properti ini ke peran IAM yang dihasilkan untuk fungsi ini. Jika Amazon Resource Name (ARN) peran tersedia untuk fungsi ini, properti ini tidak melakukan apa-apa. -
AutoPublishAlias -
Nama alias Lambda. Untuk informasi selengkapnya tentang alias Lambda, lihat Alias fungsi Lambda di Panduan Developer AWS Lambda . Untuk contoh yang menggunakan properti ini, lihat Menerapkan aplikasi tanpa server secara bertahap dengan AWS SAM.
AWS SAM menghasilkan AWS::Lambda::Versiondan AWS::Lambda::Aliassumber daya saat properti ini disetel. Untuk informasi selengkapnya tentang skenario ini, lihat AutoPublishAlias properti ditentukan. Untuk informasi umum tentang CloudFormation sumber daya yang dihasilkan, lihatCloudFormation Sumber daya yang dihasilkan untuk AWS SAM.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
-
AutoPublishAliasAllProperties -
Menentukan ketika baru
AWS::Lambda::Versiondibuat. Kapantrue, versi Lambda baru dibuat ketika properti apa pun dalam fungsi Lambda diubah. Kapanfalse, versi Lambda baru dibuat hanya jika salah satu properti berikut dimodifikasi:-
Environment,MemorySize, atauSnapStart. -
Setiap perubahan yang menghasilkan pembaruan ke
Codeproperti, sepertiCodeDict,ImageUri, atauInlineCode.
Properti ini
AutoPublishAliasharus didefinisikan.Jika juga
AutoPublishCodeSha256ditentukan, perilakunya lebih diutamakan.AutoPublishAliasAllProperties: trueTipe: Boolean
Wajib: Tidak
Nilai default:
falseCloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
-
-
AutoPublishCodeSha256 -
Saat digunakan, string ini bekerja dengan
CodeUrinilai untuk menentukan apakah versi Lambda baru perlu dipublikasikan. Properti ini sering digunakan untuk mengatasi masalah penerapan berikut: Paket penerapan disimpan di lokasi Amazon S3 dan digantikan oleh paket penerapan baru dengan kode fungsi Lambda yang diperbarui tetapi properti tetap tidak berubah (sebagai lawanCodeUridari paket penerapan baru yang diunggah ke lokasi Amazon S3 baru dan diubah ke lokasi baru).CodeUriMasalah ini ditandai dengan AWS SAM template yang memiliki karakteristik sebagai berikut:
DeploymentPreferenceObjek dikonfigurasi untuk penerapan bertahap (seperti yang dijelaskan dalam) Menerapkan aplikasi tanpa server secara bertahap dengan AWS SAMAutoPublishAliasProperti disetel dan tidak berubah di antara penerapanCodeUriProperti disetel dan tidak berubah di antara penerapan.
Dalam skenario ini, memperbarui
AutoPublishCodeSha256menghasilkan versi Lambda baru yang berhasil dibuat. Namun, kode fungsi baru yang diterapkan ke Amazon S3 tidak akan dikenali. Untuk mengenali kode fungsi baru, pertimbangkan untuk menggunakan pembuatan versi di bucket Amazon S3 Anda. TentukanVersionproperti untuk fungsi Lambda Anda dan konfigurasikan bucket Anda agar selalu menggunakan paket penerapan terbaru.Dalam skenario ini, agar berhasil memicu deployment bertahap, Anda harus memberikan nilai unik untuk
AutoPublishCodeSha256.Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
-
CodeSigningConfigArn -
ARN AWS::Lambda::CodeSigningConfigsumber daya, digunakan untuk mengaktifkan penandatanganan kode untuk fungsi ini. Untuk informasi selengkapnya tentang penandatanganan kode, lihat Siapkan penandatanganan kode untuk AWS SAM aplikasi Anda.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
CodeSigningConfigArnpropertiAWS::Lambda::Functionsumber daya. -
CodeUri -
Kode untuk fungsi. Nilai yang diterima meliputi:
-
Fungsi Amazon S3 URI. Misalnya,
s3://bucket-123456789/sam-app/1234567890abcdefg. -
Jalur lokal ke fungsi. Misalnya,
hello_world/. -
Sebuah objek FunctionCode.
catatan
Jika Anda menyediakan URI atau FunctionCode objek Amazon S3 fungsi, Anda harus mereferensikan paket penerapan Lambda yang valid.
Jika Anda menyediakan jalur file lokal, gunakan AWS SAMCLI untuk mengunggah file lokal saat penerapan. Untuk mempelajari selengkapnya, lihat Cara AWS SAM mengunggah file lokal saat penerapan.
Jika Anda menggunakan fungsi intrinsik di
CodeUriproperti, tidak AWS SAM akan dapat mengurai nilai dengan benar. Pertimbangkan untuk menggunakan AWS::LanguageExtensions transform sebagai gantinya.Jenis: [String |FunctionCode]
Diperlukan: Bersyarat. Kapan
PackageTypediatur keZip, salah satuCodeUriatauInlineCodediperlukan.CloudFormation kompatibilitas: Properti ini mirip dengan
CodepropertiAWS::Lambda::Functionsumber daya. Properti Amazon S3 yang di-nest diberi nama berbeda. -
-
DeadLetterQueue -
Mengonfigurasi topik Amazon Simple Notification Service (Amazon SNS) atau antrean Amazon Simple Queue Service (Amazon SQS) tempat Lambda mengirimkan peristiwa yang tidak dapat diproses. Untuk informasi selengkapnya tentang fungsionalitas antrian huruf mati, lihat Antrian huruf mati di Panduan Pengembang.AWS Lambda
catatan
Jika sumber peristiwa fungsi Lambda Anda adalah antrean Amazon SQS, konfigurasikan antrian huruf mati untuk antrean sumber, bukan untuk fungsi Lambda. Antrean surat mati yang dikonfigurasikan untuk fungsi digunakan untuk antrean invokasi tidak sinkron fungsi, bukan untuk antrean sumber peristiwa.
Jenis: Peta | DeadLetterQueue
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini mirip dengan
DeadLetterConfigpropertiAWS::Lambda::Functionsumber daya. Dalam CloudFormation jenis ini berasal dariTargetArn, sedangkan di AWS SAM Anda harus melewati tipe bersama denganTargetArn. -
DeploymentPreference -
Pengaturan untuk mengaktifkan deployment Lambda bertahap.
Jika
DeploymentPreferenceobjek ditentukan, AWS SAM membuat AWS::CodeDeploy::ApplicationdipanggilServerlessDeploymentApplication(satu per tumpukan), AWS::CodeDeploy::DeploymentGroupdipanggil, dan AWS::IAM::Roledipanggil<function-logical-id>DeploymentGroupCodeDeployServiceRole.Jenis: DeploymentPreference
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
Lihat juga: Untuk informasi selengkapnya tentang properti ini, lihat Menerapkan aplikasi tanpa server secara bertahap dengan AWS SAM.
-
Description -
Deskripsi fungsi.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
DescriptionpropertiAWS::Lambda::Functionsumber daya. -
Environment -
Konfigurasi untuk lingkungan waktu aktif.
Tipe: Lingkungan
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
EnvironmentpropertiAWS::Lambda::Functionsumber daya. -
EphemeralStorage -
Objek yang menentukan ruang disk, dalam MB, tersedia untuk fungsi Lambda Anda di.
/tmpUntuk informasi selengkapnya tentang properti ini, lihat lingkungan eksekusi Lambda di Panduan AWS Lambda Pengembang.
Jenis: EphemeralStorage
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
EphemeralStoragepropertiAWS::Lambda::Functionsumber daya. -
EventInvokeConfig -
Objek yang menggambarkan peristiwa memanggil konfigurasi pada fungsi Lambda.
Jenis: EventInvokeConfiguration
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
-
Events -
Menentukan peristiwa yang memicu fungsi ini. Peristiwa terdiri dari tipe dan satu set properti yang bergantung pada tipenya.
Jenis: EventSource
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
-
FileSystemConfigs -
Daftar FileSystemConfigobjek yang menentukan pengaturan koneksi untuk sistem file Amazon Elastic File System (Amazon EFS).
Jika template Anda berisi AWS::EFS::MountTargetsumber daya, Anda juga harus menentukan atribut
DependsOnresource untuk memastikan bahwa target mount dibuat atau diperbarui sebelum fungsi.Tipe: Daftar
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
FileSystemConfigspropertiAWS::Lambda::Functionsumber daya. -
FunctionName -
Nama untuk fungsi. Jika Anda tidak menentukan nama, nama unik akan dibuat untuk Anda.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
FunctionNamepropertiAWS::Lambda::Functionsumber daya. -
FunctionUrlConfig -
Objek yang menggambarkan URL fungsi. URL fungsi adalah titik akhir HTTPS yang dapat Anda gunakan untuk menjalankan fungsi Anda.
Untuk informasi selengkapnya, lihat Fungsi URLs dalam Panduan AWS Lambda Pengembang.
Jenis: FunctionUrlConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
-
Handler -
Fungsi dalam kode Anda yang dipanggil untuk memulai eksekusi. Properti ini hanya diperlukan jika properti
PackageTypediatur keZip.Tipe: String
Wajib: Bersyarat
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
HandlerpropertiAWS::Lambda::Functionsumber daya. -
ImageConfig -
Objek yang digunakan untuk mengonfigurasi pengaturan citra kontainer Lambda. Untuk informasi selengkapnya, lihat Menggunakan citra kontainer dengan Lambda di Panduan Developer AWS Lambda .
Jenis: ImageConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
ImageConfigpropertiAWS::Lambda::Functionsumber daya. -
ImageUri -
URI repositori Amazon Elastic Container Registry (Amazon ECR) untuk citra kontainer fungsi Lambda ini. Properti ini hanya berlaku jika properti
PackageTypediatur keImage, jika tidak akan diabaikan. Untuk informasi selengkapnya, lihat Menggunakan citra kontainer dengan Lambda di Panduan Developer AWS Lambda .catatan
Jika
PackageTypeproperti disetel keImage, makaImageUridiperlukan, atau Anda harus membangun aplikasi Anda denganMetadataentri yang diperlukan dalam file AWS SAM template. Untuk informasi selengkapnya, lihat Membangun default dengan AWS SAM.Membangun aplikasi Anda dengan
Metadataentri yang diperlukan lebih diutamakanImageUri, jadi jika Anda menentukan keduanya makaImageUridiabaikan.Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
ImageUriproperti tipeAWS::Lambda::FunctionCodedata. -
InlineCode -
Kode fungsi Lambda yang ditulis langsung dalam templat. Properti ini hanya berlaku jika properti
PackageTypediatur keZip, jika tidak akan diabaikan.catatan
Jika properti
PackageTypediatur keZip(default), salah satuCodeUriatauInlineCodeharus ada.Tipe: String
Wajib: Bersyarat
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
ZipFileproperti tipeAWS::Lambda::FunctionCodedata. -
KmsKeyArn -
ARN dari kunci AWS Key Management Service (AWS KMS) yang digunakan Lambda untuk mengenkripsi dan mendekripsi variabel lingkungan fungsi Anda.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
KmsKeyArnpropertiAWS::Lambda::Functionsumber daya. -
Layers -
Daftar
LayerVersionARNs yang harus digunakan fungsi ini. Urutan yang ditentukan di sini adalah urutan ketika urutan impor saat menjalankan fungsi Lambda. Versi ini adalah ARN lengkap termasuk versi atau referensi ke sumber daya. LayerVersion Misalnya, referensi ke aLayerVersionakan!Ref MyLayersementara ARN lengkap termasuk versi akan.arn:aws:lambda:region:account-id:layer:layer-name:versionTipe: Daftar
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
LayerspropertiAWS::Lambda::Functionsumber daya. -
LoggingConfig -
Pengaturan konfigurasi Amazon CloudWatch Logs fungsi.
Jenis: LoggingConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
LoggingConfigpropertiAWS::Lambda::Functionsumber daya. -
MemorySize -
Ukuran memori dalam MB yang dialokasikan per pemanggilan fungsi.
Tipe: Integer
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
MemorySizepropertiAWS::Lambda::Functionsumber daya. -
PackageType -
Tipe paket deployment fungsi Lambda. Untuk informasi lebih lanjut, lihat Paket deployment Lambda di Panduan Developer AWS Lambda .
Catatan:
1. Jika properti ini diatur ke
Zip(default),CodeUriatauInlineCodeberlaku, danImageUridiabaikan.2. Jika properti ini diatur ke
Image, hanyaImageUriyang berlaku, danCodeUridanInlineCodediabaikan. Repositori Amazon ECR yang diperlukan untuk menyimpan gambar kontainer fungsi dapat dibuat secara otomatis oleh file. AWS SAMCLI Untuk informasi selengkapnya, lihat sam deploy.Nilai yang valid:
ZipatauImageTipe: String
Wajib: Tidak
Default:
ZipCloudFormation kompatibilitas: Properti ini diteruskan langsung ke
PackageTypepropertiAWS::Lambda::Functionsumber daya. -
PermissionsBoundary -
ARN batas izin untuk digunakan untuk peran eksekusi fungsi ini. Properti ini bekerja hanya jika peran dibuat untuk Anda.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
PermissionsBoundarypropertiAWS::IAM::Rolesumber daya. -
Policies -
Kebijakan izin untuk fungsi ini. Kebijakan akan ditambahkan ke peran eksekusi default AWS Identity and Access Management (IAM) fungsi.
Properti ini menerima satu nilai atau daftar nilai. Nilai yang diizinkan meliputi:
-
Kebijakan ARN AWS terkelola atau kebijakan yang dikelola pelanggan.
-
Nama kebijakan AWS terkelola dari daftar
berikut. -
Kebijakan IAM sebaris yang diformat YAML sebagai peta.
catatan
Jika Anda menyetel
Roleproperti, properti ini diabaikan.Tipe: String | Daftar | Peta
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini mirip dengan
PoliciespropertiAWS::IAM::Rolesumber daya. -
Tunjukkan apakah akan meneruskan tag dari
Tagsproperti ke sumber daya yang Anda AWS::Serverless::Function hasilkan atau tidak. TentukanTrueuntuk menyebarkan tag di sumber daya yang Anda hasilkan.Tipe: Boolean
Wajib: Tidak
Default:
FalseCloudFormation kompatibilitas: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.
-
ProvisionedConcurrencyConfig -
Konfigurasi konkurensi yang disediakan untuk alias fungsi.
catatan
ProvisionedConcurrencyConfigdapat ditentukan hanya jikaAutoPublishAliasdiatur. Jika tidak, akan terjadi kesalahan.Jenis: ProvisionedConcurrencyConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
ProvisionedConcurrencyConfigpropertiAWS::Lambda::Aliassumber daya. -
RecursiveLoop -
Status konfigurasi deteksi loop rekursif fungsi Anda.
Ketika nilai ini disetel ke
Allowdan Lambda mendeteksi fungsi Anda dipanggil sebagai bagian dari loop rekursif, itu tidak mengambil tindakan apa pun.Ketika nilai ini disetel ke
Terminatedan Lambda mendeteksi fungsi Anda dipanggil sebagai bagian dari loop rekursif, itu menghentikan fungsi Anda dipanggil dan memberi tahu Anda.Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
RecursiveLooppropertiAWS::Lambda::Functionsumber daya. -
ReservedConcurrentExecutions -
Jumlah maksimum eksekusi bersamaan yang ingin Anda simpan untuk fungsi tersebut.
Untuk informasi lebih lanjut, lihat Skala Fungsi Lambda dalam Panduan Developer AWS Lambda .
Tipe: Integer
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
ReservedConcurrentExecutionspropertiAWS::Lambda::Functionsumber daya. -
Role -
ARN dari IAM role untuk digunakan sebagai peran eksekusi fungsi ini.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini mirip dengan
RolepropertiAWS::Lambda::Functionsumber daya. Ini diperlukan di CloudFormation tetapi tidak di AWS SAM. Jika peran tidak ditentukan, satu dibuat untuk Anda dengan ID logis.<function-logical-id>Role -
RolePath -
Jalur ke peran eksekusi IAM fungsi.
Gunakan properti ini saat peran dibuat untuk Anda. Jangan gunakan saat peran ditentukan dengan
Roleproperti.Tipe: String
Wajib: Bersyarat
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
PathpropertiAWS::IAM::Rolesumber daya. -
Runtime -
Pengenal waktu aktif fungsi. Properti ini hanya diperlukan jika properti
PackageTypediatur keZip.catatan
Jika Anda menentukan
providedidentifier untuk properti ini, Anda dapat menggunakan atributMetadataresource untuk menginstruksikan AWS SAM untuk membangun runtime kustom yang diperlukan fungsi ini. Untuk informasi selengkapnya tentang membangun waktu aktif kustom, lihat Membangun fungsi Lambda dengan runtime khusus di AWS SAM.Tipe: String
Wajib: Bersyarat
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
RuntimepropertiAWS::Lambda::Functionsumber daya. -
RuntimeManagementConfig -
Konfigurasikan opsi manajemen runtime untuk fungsi Lambda Anda seperti pembaruan lingkungan runtime, perilaku rollback, dan memilih versi runtime tertentu. Untuk mempelajari selengkapnya, lihat Pembaruan runtime Lambda di Panduan Pengembang.AWS Lambda
Jenis: RuntimeManagementConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
RuntimeManagementConfigpropertiAWS::Lambda::Functionsumber daya. -
SnapStart -
Buat snapshot dari versi fungsi Lambda baru. Snapshot adalah status cache dari fungsi inisialisasi Anda, termasuk semua dependensinya. Fungsi ini diinisialisasi hanya sekali dan status cache digunakan kembali untuk semua pemanggilan future, meningkatkan kinerja aplikasi dengan mengurangi berapa kali fungsi Anda harus diinisialisasi. Untuk mempelajari lebih lanjut, lihat Meningkatkan kinerja startup dengan Lambda SnapStart di Panduan AWS Lambda Pengembang.
Jenis: SnapStart
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
SnapStartpropertiAWS::Lambda::Functionsumber daya. -
SourceKmsKeyArn -
Merupakan ARN kunci KMS yang digunakan untuk mengenkripsi kode fungsi ZIP pelanggan.
Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
SourceKmsKeyArnproperti tipeAWS::Lambda::FunctionCodedata. -
Sebuah peta (string ke string) yang menentukan tanda ditambahkan ke fungsi ini. Untuk detail tentang kunci dan nilai yang valid untuk tag, lihat Kunci Tag dan Persyaratan Nilai di Panduan AWS Lambda Pengembang.
Saat tumpukan dibuat, AWS SAM secara otomatis menambahkan
lambda:createdBy:SAMtag ke fungsi Lambda ini, dan ke peran default yang dihasilkan untuk fungsi ini.Tipe: Peta
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini mirip dengan
TagspropertiAWS::Lambda::Functionsumber daya.TagsProperti di AWS SAM terdiri dari pasangan kunci-nilai (sedangkan dalam properti CloudFormation ini terdiri dari daftarTagobjek). Selain itu, AWS SAM secara otomatis menambahkanlambda:createdBy:SAMtag ke fungsi Lambda ini, dan ke peran default yang dihasilkan untuk fungsi ini. -
Timeout -
Waktu maksimum dalam detik bahwa fungsi dapat berjalan sebelum dihentikan.
Tipe: Integer
Wajib: Tidak
Default: 3
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
TimeoutpropertiAWS::Lambda::Functionsumber daya. -
Tracing -
String yang menentukan mode pelacakan X-Ray fungsi.
-
Active- Mengaktifkan penelusuran X-Ray untuk fungsi tersebut. -
Disabled- Menonaktifkan X-Ray untuk fungsi tersebut. -
PassThrough- Mengaktifkan penelusuran X-Ray untuk fungsi tersebut. Keputusan pengambilan sampel didelegasikan ke layanan hilir.
Jika ditentukan sebagai
ActiveatauPassThroughdanRoleproperti tidak disetel, AWS SAM tambahkanarn:aws:iam::aws:policy/AWSXrayWriteOnlyAccesskebijakan ke peran eksekusi Lambda yang dibuatnya untuk Anda.Untuk informasi selengkapnya tentang X-Ray, lihat Menggunakan AWS Lambda dengan AWS X-Ray di Panduan AWS Lambda Pengembang.
Nilai yang valid: [
Active|Disabled|PassThrough]Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini mirip dengan
TracingConfigpropertiAWS::Lambda::Functionsumber daya. -
-
VersionDescription -
Menentukan bidang
Descriptionyang ditambahkan pada sumber daya versi Lambda baru.Tipe: String
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
DescriptionpropertiAWS::Lambda::Versionsumber daya. -
VpcConfig -
Konfigurasi yang memungkinkan fungsi ini mengakses sumber daya privat dalam virtual private cloud (VPC) Anda.
Jenis: VpcConfig
Wajib: Tidak
CloudFormation kompatibilitas: Properti ini diteruskan langsung ke
VpcConfigpropertiAWS::Lambda::Functionsumber daya.
Nilai Pengembalian
Ref
Ketika ID logis dari sumber daya ini disediakan untuk fungsi intrinsik Ref, ID mengembalikan nama sumber daya dari fungsi Lambda utama.
Untuk informasi lebih lanjut tentang menggunakan fungsi Ref, lihat Ref diPanduan Pengguna AWS CloudFormation .
Fn:: GetAtt
Fn::GetAtt mengembalikan nilai untuk atribut yang ditentukan dari jenis ini. Berikut ini adalah atribut yang tersedia dan nilai-nilai kembali sampel.
Untuk informasi lebih lanjut tentang menggunakan Fn::GetAtt, lihat Fn::GetAtt di Panduan Pengguna AWS CloudFormation .
Arn-
ARN fungsi Lambda utama.
Contoh
Fungsi sederhana
Berikut ini adalah contoh dasar sumber daya AWS::Serverless::Function dari tipe paket Zip (default) dan kode fungsi dalam bucket Amazon S3.
YAML
Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: python3.9 CodeUri: s3://bucket-name/key-name
Contoh properti fungsi
Berikut ini adalah contoh-contoh AWS::Serverless::Function dari tipe paket Zip (default) yang menggunakan InlineCode, Layers, Tracing, Policies, Amazon EFS, dan sumber peristiwa Api.
YAML
Type: AWS::Serverless::Function DependsOn: MyMountTarget # This is needed if an AWS::EFS::MountTarget resource is declared for EFS Properties: Handler: index.handler Runtime: python3.9 InlineCode: | def handler(event, context): print("Hello, world!") ReservedConcurrentExecutions: 30 Layers: - Ref: MyLayer Tracing: Active Timeout: 120 FileSystemConfigs: - Arn: !Ref MyEfsFileSystem LocalMountPath: /mnt/EFS Policies: - AWSLambdaExecute - Version: '2012-10-17 ' Statement: - Effect: Allow Action: - s3:GetObject - s3:GetObjectACL Resource: 'arn:aws:s3:::sam-s3-demo-bucket/*' Events: ApiEvent: Type: Api Properties: Path: /path Method: get
Contoh ImageConfig
Berikut ini adalah contoh-contoh ImageConfig untuk fungsi Lambda dari tipe paket Image.
YAML
HelloWorldFunction: Type: AWS::Serverless::Function Properties: PackageType: Image ImageUri:account-id.dkr.ecr.region.amazonaws.com/ecr-repo-name:image-nameImageConfig: Command: - "app.lambda_handler" EntryPoint: - "entrypoint1" WorkingDirectory: "workDir"
RuntimeManagementConfig contoh
Fungsi Lambda yang dikonfigurasi untuk memperbarui lingkungan runtime-nya sesuai dengan perilaku saat ini:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: Auto
Fungsi Lambda yang dikonfigurasi untuk memperbarui lingkungan runtime-nya saat fungsi diperbarui:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: FunctionUpdate
Fungsi Lambda yang dikonfigurasi untuk memperbarui lingkungan runtime-nya secara manual:
TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: RuntimeVersionArn: arn:aws:lambda:us-east-1::runtime:4c459dd0104ee29ec65dcad056c0b3ddbe20d6db76b265ade7eda9a066859b1e UpdateRuntimeOn: Manual
SnapStart contoh
Contoh fungsi Lambda dengan SnapStart dihidupkan untuk versi masa depan:
TestFunc Type: AWS::Serverless::Function Properties: ... SnapStart: ApplyOn: PublishedVersions