

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

# AWS::Serverless::Function
<a name="sam-resource-function"></a>

Membuat AWS Lambda fungsi, peran eksekusi AWS Identity and Access Management (IAM), dan pemetaan sumber peristiwa yang memicu fungsi.

[AWS::Serverless::Function](#sam-resource-function)Resource 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](building-custom-runtimes.md).

**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](sam-specification-generated-resources.md).

## Sintaksis
<a name="sam-resource-function-syntax"></a>

Untuk mendeklarasikan entitas ini dalam template AWS Serverless Application Model (AWS SAM) Anda, gunakan sintaks berikut.

### YAML
<a name="sam-resource-function-syntax.yaml"></a>

```
Type: AWS::Serverless::Function
Properties:
  [Architectures](#sam-function-architectures): {{List}}
  [AssumeRolePolicyDocument](#sam-function-assumerolepolicydocument): {{JSON}}
  [AutoPublishAlias](#sam-function-autopublishalias): {{String}}
  AutoPublishAliasAllProperties: {{Boolean}}
  [AutoPublishCodeSha256](#sam-function-autopublishcodesha256): {{String}}
  [CapacityProviderConfig](#sam-function-capacityproviderconfig): {{CapacityProviderConfig}}
  [CodeSigningConfigArn](#sam-function-codesigningconfigarn): {{String}}
  [CodeUri](#sam-function-codeuri): {{String | FunctionCode}}
  [DeadLetterQueue](#sam-function-deadletterqueue): {{Map | DeadLetterQueue}}
  [DeploymentPreference](#sam-function-deploymentpreference): {{DeploymentPreference}}
  [Description](#sam-function-description): {{String}}
  [DurableConfig](#sam-function-durableconfig): {{DurableConfig}}
  [Environment](#sam-function-environment): {{[Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)}}
  [EphemeralStorage](#sam-function-ephemeralstorage): {{[EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)}}
  [EventInvokeConfig](#sam-function-eventinvokeconfig): {{EventInvokeConfiguration}}
  [Events](#sam-function-events): {{EventSource}}
  [FileSystemConfigs](#sam-function-filesystemconfigs): {{List}}
  [FunctionName](#sam-function-functionname): {{String}}
  [FunctionScalingConfig](#sam-function-functionscalingconfig): {{FunctionScalingConfig}}
  [FunctionUrlConfig](#sam-function-functionurlconfig): {{FunctionUrlConfig}}
  [Handler](#sam-function-handler): {{String}}
  [ImageConfig](#sam-function-imageconfig): {{[ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)}}
  [ImageUri](#sam-function-imageuri): {{String}}
  [InlineCode](#sam-function-inlinecode): {{String}}
  [KmsKeyArn](#sam-function-kmskeyarn): {{String}}
  [Layers](#sam-function-layers): {{List}}
  LoggingConfig: {{[LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html)}}
  [MemorySize](#sam-function-memorysize): {{Integer}}
  [PackageType](#sam-function-packagetype): {{String}}
  [PermissionsBoundary](#sam-function-permissionsboundary): {{String}}
  [Policies](#sam-function-policies): {{String | List | Map}}
  [PublishToLatestPublished](#sam-function-publishtolatestpublished): {{Boolean}}
  PropagateTags: {{Boolean}}
  [ProvisionedConcurrencyConfig](#sam-function-provisionedconcurrencyconfig): {{[ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)}}
  RecursiveLoop: {{String}}
  [ReservedConcurrentExecutions](#sam-function-reservedconcurrentexecutions): {{Integer}}
  [Role](#sam-function-role): {{String}}
  [RolePath](#sam-function-rolepath): {{String}}
  [Runtime](#sam-function-runtime): {{String}}
  RuntimeManagementConfig: {{[RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)}}
  SnapStart: {{[SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)}}
  [SourceKMSKeyArn](#sam-function-sourcekmskeyarn): {{String}}
  [Tags](#sam-function-tags): {{Map}}
  [TenancyConfig](#sam-function-tenancyconfig): {{TenancyConfig}}
  [Timeout](#sam-function-timeout): {{Integer}}
  [Tracing](#sam-function-tracing): {{String}}
  [VersionDescription](#sam-function-versiondescription): {{String}}
  [VersionDeletionPolicy](#sam-function-versiondeletionpolicy): {{String}}
  [VpcConfig](#sam-function-vpcconfig): {{[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)}}
```

## Sifat-sifat
<a name="sam-resource-function-properties"></a>

 `Architectures`   <a name="sam-function-architectures"></a>
Arsitektur set instruksi untuk fungsi tersebut.  
*Untuk informasi selengkapnya tentang properti ini, lihat [Arsitektur set instruksi Lambda di Panduan](https://docs.aws.amazon.com/lambda/latest/dg/foundation-arch.html) Pengembang.AWS Lambda *  
*Nilai yang valid*: Salah satu `x86_64` atau `arm64`  
*Tipe*: Daftar  
*Wajib*: Tidak  
*Default*: `x86_64`  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Architectures](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-architectures)` properti `AWS::Lambda::Function` sumber daya.

 `AssumeRolePolicyDocument`   <a name="sam-function-assumerolepolicydocument"></a>
Menambahkan AssumeRolePolicyDocument untuk default yang dibuat `Role` untuk 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 `[AssumeRolePolicyDocument](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument)` properti `AWS::IAM::Role` sumber 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`   <a name="sam-function-autopublishalias"></a>
Nama alias Lambda. Untuk informasi selengkapnya tentang alias Lambda, lihat [Alias fungsi Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-aliases.html) di *Panduan Developer AWS Lambda *. Untuk contoh yang menggunakan properti ini, lihat [Menerapkan aplikasi tanpa server secara bertahap dengan AWS SAM](automating-updates-to-serverless-apps.md).  
AWS SAM menghasilkan [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)dan [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html)sumber daya saat properti ini disetel. Untuk informasi selengkapnya tentang skenario ini, lihat [AutoPublishAlias properti ditentukan](sam-specification-generated-resources-function.md#sam-specification-generated-resources-function-autopublishalias). Untuk informasi umum tentang CloudFormation sumber daya yang dihasilkan, lihat[CloudFormation Sumber daya yang dihasilkan untuk AWS SAM](sam-specification-generated-resources.md).  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `AutoPublishAliasAllProperties`   <a name="sam-function-autopublishaliasallproperties"></a>
Menentukan ketika baru [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html)dibuat. Kapan`true`, versi Lambda baru dibuat ketika properti apa pun dalam fungsi Lambda diubah. Kapan`false`, versi Lambda baru dibuat hanya jika salah satu properti berikut dimodifikasi:  
+ `Environment`, `MemorySize`, atau `SnapStart`.
+ Setiap perubahan yang menghasilkan pembaruan ke `Code` properti, seperti`CodeDict`,`ImageUri`, atau`InlineCode`.
Properti ini `AutoPublishAlias` harus didefinisikan.  
Jika juga `AutoPublishCodeSha256` ditentukan, perilakunya lebih diutamakan. `AutoPublishAliasAllProperties: true`  
*Tipe*: Boolean  
*Wajib*: Tidak  
*Nilai default*: `false`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `AutoPublishCodeSha256`   <a name="sam-function-autopublishcodesha256"></a>
Saat digunakan, string ini bekerja dengan `CodeUri` nilai 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 lawan `CodeUri` dari paket penerapan baru yang diunggah ke lokasi Amazon S3 baru dan diubah ke lokasi baru). `CodeUri`  
Masalah ini ditandai dengan AWS SAM template yang memiliki karakteristik sebagai berikut:  
+ `DeploymentPreference`Objek dikonfigurasi untuk penerapan bertahap (seperti yang dijelaskan dalam) [Menerapkan aplikasi tanpa server secara bertahap dengan AWS SAM](automating-updates-to-serverless-apps.md)
+ `AutoPublishAlias`Properti disetel dan tidak berubah di antara penerapan
+ `CodeUri`Properti disetel dan tidak berubah di antara penerapan.
Dalam skenario ini, memperbarui `AutoPublishCodeSha256` menghasilkan 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. Tentukan `Version` properti 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.

 `CapacityProviderConfig`   <a name="sam-function-capacityproviderconfig"></a>
Mengkonfigurasi penyedia kapasitas tempat versi fungsi yang diterbitkan akan dilampirkan. Ini memungkinkan fungsi berjalan pada instans EC2 milik pelanggan yang dikelola oleh Instans Terkelola Lambda.  
*Jenis*: [CapacityProviderConfig](sam-property-function-capacityproviderconfig.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: SAM meratakan properti yang diteruskan ke `[CapacityProviderConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-capacityproviderconfig)` properti `AWS::Lambda::Function` sumber daya dan merekonstruksi struktur bersarang.

 `CodeSigningConfigArn`   <a name="sam-function-codesigningconfigarn"></a>
ARN [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-codesigningconfig.html)sumber daya, digunakan untuk mengaktifkan penandatanganan kode untuk fungsi ini. Untuk informasi selengkapnya tentang penandatanganan kode, lihat [Siapkan penandatanganan kode untuk AWS SAM aplikasi Anda](authoring-codesigning.md).  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[CodeSigningConfigArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-codesigningconfigarn)` properti `AWS::Lambda::Function` sumber daya.

 `CodeUri`   <a name="sam-function-codeuri"></a>
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](sam-property-function-functioncode.md).
Jika Anda menyediakan URI atau [FunctionCode](sam-property-function-functioncode.md) objek Amazon S3 fungsi, Anda harus mereferensikan paket penerapan [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) 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](deploy-upload-local-files.md).  
Jika Anda menggunakan fungsi intrinsik di `CodeUri` properti, tidak AWS SAM akan dapat mengurai nilai dengan benar. Pertimbangkan untuk menggunakan [AWS::LanguageExtensions transform](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/transform-aws-languageextensions.html) sebagai gantinya.
*Jenis*: [String \|[FunctionCode](sam-property-function-functioncode.md)]  
*Diperlukan*: Bersyarat. Kapan `PackageType` diatur ke`Zip`, salah satu `CodeUri` atau `InlineCode` diperlukan.  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[ Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code)` properti `AWS::Lambda::Function` sumber daya. Properti Amazon S3 yang di-nest diberi nama berbeda.

 `DeadLetterQueue`   <a name="sam-function-deadletterqueue"></a>
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](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async-retain-records.html#invocation-dlq) Pengembang.AWS Lambda *  
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](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html) fungsi, bukan untuk antrean sumber peristiwa.
*Jenis*: Peta \| [DeadLetterQueue](sam-property-function-deadletterqueue.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[DeadLetterConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-deadletterconfig.html)` properti `AWS::Lambda::Function` sumber daya. Dalam CloudFormation jenis ini berasal dari`TargetArn`, sedangkan di AWS SAM Anda harus melewati tipe bersama dengan`TargetArn`.

 `DeploymentPreference`   <a name="sam-function-deploymentpreference"></a>
Pengaturan untuk mengaktifkan deployment Lambda bertahap.  
Jika `DeploymentPreference` objek ditentukan, AWS SAM membuat [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html)dipanggil `ServerlessDeploymentApplication` (satu per tumpukan), [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html)dipanggil`{{<function-logical-id>}}DeploymentGroup`, dan [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html)dipanggil`CodeDeployServiceRole`.  
*Jenis*: [DeploymentPreference](sam-property-function-deploymentpreference.md)  
*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](automating-updates-to-serverless-apps.md).

 `Description`   <a name="sam-function-description"></a>
Deskripsi fungsi.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description)` properti `AWS::Lambda::Function` sumber daya.

 `DurableConfig`   <a name="sam-function-durableconfig"></a>
Konfigurasi untuk fungsi yang tahan lama. Mengaktifkan eksekusi stateful dengan kemampuan checkpointing dan replay otomatis.  
*Jenis*: [DurableConfig](sam-property-function-durableconfig.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Environment`   <a name="sam-function-environment"></a>
Konfigurasi untuk lingkungan waktu aktif.  
*Tipe*: [Lingkungan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Environment](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html)` properti `AWS::Lambda::Function` sumber daya.

 `EphemeralStorage`   <a name="sam-function-ephemeralstorage"></a>
Objek yang menentukan ruang disk, dalam MB, tersedia untuk fungsi Lambda Anda di. `/tmp`  
Untuk informasi selengkapnya tentang properti ini, lihat [lingkungan eksekusi Lambda](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html) di Panduan *AWS Lambda Pengembang*.  
*Jenis*: [EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[EphemeralStorage](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-ephemeralstorage)` properti `AWS::Lambda::Function` sumber daya.

 `EventInvokeConfig`   <a name="sam-function-eventinvokeconfig"></a>
Objek yang menggambarkan peristiwa memanggil konfigurasi pada fungsi Lambda.  
*Jenis*: [EventInvokeConfiguration](sam-property-function-eventinvokeconfiguration.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Events`   <a name="sam-function-events"></a>
Menentukan peristiwa yang memicu fungsi ini. Peristiwa terdiri dari tipe dan satu set properti yang bergantung pada tipenya.  
*Jenis*: [EventSource](sam-property-function-eventsource.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `FileSystemConfigs`   <a name="sam-function-filesystemconfigs"></a>
Daftar [FileSystemConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-filesystemconfig.html)objek yang menentukan pengaturan koneksi untuk sistem file Amazon Elastic File System (Amazon EFS) atau sistem file File Amazon S3. Anda dapat melampirkan jalur akses Amazon EFS atau titik akses File S3, tetapi tidak keduanya.  
Setiap `FileSystemConfig` objek berisi `Arn` (titik akses ARN) dan a `LocalMountPath` (jalur di mana sistem file dipasang dalam fungsi). Untuk Amazon EFS, ARN adalah titik akses Amazon EFS ARN. Untuk File S3, ARN adalah ARN. `AWS::S3Files::AccessPoint`  
Jika template Anda berisi [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html)sumber daya, Anda juga harus menentukan atribut `DependsOn` resource untuk memastikan bahwa target mount dibuat atau diperbarui sebelum fungsi. Demikian pula, jika template Anda berisi `AWS::S3Files::MountTarget` sumber daya, Anda harus menentukan `DependsOn` atribut untuk target pemasangan File S3.  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[FileSystemConfigs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-filesystemconfigs)` properti `AWS::Lambda::Function` sumber daya.

 `FunctionName`   <a name="sam-function-functionname"></a>
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 `[FunctionName](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname)` properti `AWS::Lambda::Function` sumber daya.

 `FunctionScalingConfig`   <a name="sam-function-functionscalingconfig"></a>
Mengonfigurasi perilaku penskalaan untuk fungsi Lambda yang berjalan pada penyedia kapasitas. Mendefinisikan jumlah minimum dan maksimum lingkungan eksekusi.  
*Jenis*: [FunctionScalingConfig](sam-property-function-functionscalingconfig.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[FunctionScalingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionscalingconfig)` properti `AWS::Lambda::Function` sumber daya.

 `FunctionUrlConfig`   <a name="sam-function-functionurlconfig"></a>
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](https://docs.aws.amazon.com/lambda/latest/dg/lambda-urls.html) dalam *Panduan AWS Lambda Pengembang*.  
*Jenis*: [FunctionUrlConfig](sam-property-function-functionurlconfig.md)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `Handler`   <a name="sam-function-handler"></a>
Fungsi dalam kode Anda yang dipanggil untuk memulai eksekusi. Properti ini hanya diperlukan jika properti `PackageType` diatur ke `Zip`.  
*Tipe*: String  
*Wajib*: Bersyarat  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Handler](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler)` properti `AWS::Lambda::Function` sumber daya.

 `ImageConfig`   <a name="sam-function-imageconfig"></a>
Objek yang digunakan untuk mengonfigurasi pengaturan citra kontainer Lambda. Untuk informasi selengkapnya, lihat [Menggunakan citra kontainer dengan Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) di *Panduan Developer AWS Lambda *.  
*Jenis*: [ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ImageConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-imageconfig)` properti `AWS::Lambda::Function` sumber daya.

 `ImageUri`   <a name="sam-function-imageuri"></a>
URI repositori Amazon Elastic Container Registry (Amazon ECR) untuk citra kontainer fungsi Lambda ini. Properti ini hanya berlaku jika properti `PackageType` diatur ke `Image`, jika tidak akan diabaikan. Untuk informasi selengkapnya, lihat [Menggunakan citra kontainer dengan Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html) di *Panduan Developer AWS Lambda *.  
Jika `PackageType` properti disetel ke`Image`, maka `ImageUri` diperlukan, atau Anda harus membangun aplikasi Anda dengan `Metadata` entri yang diperlukan dalam file AWS SAM template. Untuk informasi selengkapnya, lihat [Membangun default dengan AWS SAM](serverless-sam-cli-using-build.md).
Membangun aplikasi Anda dengan `Metadata` entri yang diperlukan lebih diutamakan`ImageUri`, jadi jika Anda menentukan keduanya maka `ImageUri` diabaikan.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ImageUri](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri)` properti tipe `AWS::Lambda::Function` `Code` data.

 `InlineCode`   <a name="sam-function-inlinecode"></a>
Kode fungsi Lambda yang ditulis langsung dalam templat. Properti ini hanya berlaku jika properti `PackageType` diatur ke `Zip`, jika tidak akan diabaikan.  
Jika properti `PackageType` diatur ke `Zip` (default), salah satu `CodeUri` atau `InlineCode` harus ada.
*Tipe*: String  
*Wajib*: Bersyarat  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ZipFile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile)` properti tipe `AWS::Lambda::Function` `Code` data.

 `KmsKeyArn`   <a name="sam-function-kmskeyarn"></a>
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 `[KmsKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn)` properti `AWS::Lambda::Function` sumber daya.

 `Layers`   <a name="sam-function-layers"></a>
Daftar `LayerVersion` ARNs 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 a `LayerVersion` akan `!Ref MyLayer` sementara ARN lengkap termasuk versi akan. `arn:aws:lambda:{{region}}:{{account-id}}:layer:{{layer-name}}:{{version}}`  
*Tipe*: Daftar  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Layers](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-layers)` properti `AWS::Lambda::Function` sumber daya.

 `LoggingConfig`   <a name="sam-function-loggingconfig"></a>
Pengaturan konfigurasi Amazon CloudWatch Logs fungsi.  
*Jenis*: [LoggingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-loggingconfig.html)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-loggingconfig)properti `AWS::Lambda::Function` sumber daya.

 `MemorySize`   <a name="sam-function-memorysize"></a>
Ukuran memori dalam MB yang dialokasikan per pemanggilan fungsi.  
*Tipe*: Integer  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[MemorySize](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize)` properti `AWS::Lambda::Function` sumber daya.

 `PackageType`   <a name="sam-function-packagetype"></a>
Tipe paket deployment fungsi Lambda. Untuk informasi lebih lanjut, lihat [Paket deployment Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) di *Panduan Developer AWS Lambda *.  
**Catatan:**  
1. Jika properti ini diatur ke `Zip` (default), `CodeUri` atau `InlineCode` berlaku, dan `ImageUri` diabaikan.  
2. Jika properti ini diatur ke `Image`, hanya `ImageUri` yang berlaku, dan `CodeUri` dan `InlineCode` diabaikan. Repositori Amazon ECR yang diperlukan untuk menyimpan gambar kontainer fungsi dapat dibuat secara otomatis oleh file. AWS SAMCLI Untuk informasi selengkapnya, lihat [sam deploy](sam-cli-command-reference-sam-deploy.md).  
*Nilai yang valid*: `Zip` atau `Image`  
*Tipe*: String  
*Wajib*: Tidak  
*Default*: `Zip`  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[PackageType](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-packagetype)` properti `AWS::Lambda::Function` sumber daya.

 `PermissionsBoundary`   <a name="sam-function-permissionsboundary"></a>
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 `[PermissionsBoundary](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-permissionsboundary)` properti `AWS::IAM::Role` sumber daya.

 `Policies`   <a name="sam-function-policies"></a>
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:  
+ [AWS SAM templat kebijakan](serverless-policy-templates.md).
+ Kebijakan ARN [AWS terkelola atau kebijakan](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) yang [dikelola pelanggan](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies).
+ Nama kebijakan AWS terkelola dari [daftar](https://github.com/aws/serverless-application-model/blob/develop/samtranslator/internal/data/aws_managed_policies.json) berikut.
+ [Kebijakan IAM sebaris](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#inline-policies) yang diformat YAML sebagai peta.
Jika Anda menyetel `Role` properti, properti ini diabaikan.
*Tipe*: String \| Daftar \| Peta  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[Policies](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies)` properti `AWS::IAM::Role` sumber daya.

 `PublishToLatestPublished`   <a name="sam-function-publishtolatestpublished"></a>
Menentukan apakah akan menerbitkan versi fungsi terbaru ketika fungsi diperbarui.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[PublishToLatestPublished](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-publishtolatestpublished)` properti `AWS::Lambda::Function` sumber daya.

`PropagateTags`  <a name="sam-function-propagatetags"></a>
Tunjukkan apakah akan meneruskan tag dari `Tags` properti ke sumber daya yang Anda [AWS::Serverless::Function](sam-specification-generated-resources-function.md) hasilkan atau tidak. Tentukan `True` untuk menyebarkan tag di sumber daya yang Anda hasilkan.  
*Tipe*: Boolean  
*Wajib*: Tidak  
*Default*: `False`  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan.

 `ProvisionedConcurrencyConfig`   <a name="sam-function-provisionedconcurrencyconfig"></a>
Konfigurasi konkurensi yang disediakan untuk alias fungsi.  
`ProvisionedConcurrencyConfig`dapat ditentukan hanya jika `AutoPublishAlias` diatur. Jika tidak, akan terjadi kesalahan.
*Jenis*: [ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ProvisionedConcurrencyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-provisionedconcurrencyconfig)` properti `AWS::Lambda::Alias` sumber daya.

 `RecursiveLoop`   <a name="sam-function-recursiveloop"></a>
Status konfigurasi deteksi loop rekursif fungsi Anda.  
Ketika nilai ini disetel ke `Allow` dan Lambda mendeteksi fungsi Anda dipanggil sebagai bagian dari loop rekursif, itu tidak mengambil tindakan apa pun.  
Ketika nilai ini disetel ke `Terminate` dan 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 `[RecursiveLoop](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-recursiveloop)` properti `AWS::Lambda::Function` sumber daya.

 `ReservedConcurrentExecutions`   <a name="sam-function-reservedconcurrentexecutions"></a>
Jumlah maksimum eksekusi bersamaan yang ingin Anda simpan untuk fungsi tersebut.  
Untuk informasi lebih lanjut, lihat [Skala Fungsi Lambda](https://docs.aws.amazon.com/lambda/latest/dg/scaling.html) dalam *Panduan Developer AWS Lambda *.  
*Tipe*: Integer  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ReservedConcurrentExecutions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-reservedconcurrentexecutions)` properti `AWS::Lambda::Function` sumber daya.

 `Role`   <a name="sam-function-role"></a>
ARN dari IAM role untuk digunakan sebagai peran eksekusi fungsi ini.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[Role](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role)` properti `AWS::Lambda::Function` sumber 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`   <a name="sam-function-rolepath"></a>
Jalur ke peran eksekusi IAM fungsi.  
Gunakan properti ini saat peran dibuat untuk Anda. Jangan gunakan saat peran ditentukan dengan `Role` properti.  
*Tipe*: String  
*Wajib*: Bersyarat  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Path](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path)` properti `AWS::IAM::Role` sumber daya.

 `Runtime`   <a name="sam-function-runtime"></a>
Pengenal [waktu aktif](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html) fungsi. Properti ini hanya diperlukan jika properti `PackageType` diatur ke `Zip`.  
Jika Anda menentukan `provided` identifier untuk properti ini, Anda dapat menggunakan atribut `Metadata` resource 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](building-custom-runtimes.md).
*Tipe*: String  
*Wajib*: Bersyarat  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Runtime](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime)` properti `AWS::Lambda::Function` sumber daya.

 `RuntimeManagementConfig`   <a name="sam-function-runtimemanagementconfig"></a>
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](https://docs.aws.amazon.com//lambda/latest/dg/runtimes-update.html) Pengembang.AWS Lambda *  
*Jenis*: [RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[ RuntimeManagementConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-runtimemanagementconfig.html)` properti `AWS::Lambda::Function` sumber daya.

 `SnapStart`   <a name="sam-function-snapstart"></a>
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](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) *Pengembang*.  
*Jenis*: [SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[SnapStart](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-snapstart.html)` properti `AWS::Lambda::Function` sumber daya.

 `SourceKMSKeyArn`   <a name="sam-function-sourcekmskeyarn"></a>
Merupakan ARN kunci KMS yang digunakan untuk mengenkripsi kode fungsi ZIP pelanggan.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[SourceKMSKeyArn](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-sourcekmskeyarn)` properti tipe `AWS::Lambda::Function` `Code` data.

 `Tags`   <a name="sam-function-tags"></a>
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](https://docs.aws.amazon.com/lambda/latest/dg/configuration-tags.html#configuration-tags-restrictions) di *Panduan AWS Lambda Pengembang*.  
Saat tumpukan dibuat, AWS SAM secara otomatis menambahkan `lambda:createdBy:SAM` tag ke fungsi Lambda ini, dan ke peran default yang dihasilkan untuk fungsi ini.  
*Tipe*: Peta  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[Tags](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags)` properti `AWS::Lambda::Function` sumber daya. `Tags`Properti di AWS SAM terdiri dari pasangan kunci-nilai (sedangkan dalam properti CloudFormation ini terdiri dari daftar `Tag` objek). Selain itu, AWS SAM secara otomatis menambahkan `lambda:createdBy:SAM` tag ke fungsi Lambda ini, dan ke peran default yang dihasilkan untuk fungsi ini.

 `TenancyConfig`   <a name="sam-function-tenancyconfig"></a>
Konfigurasi untuk mode isolasi penyewa Lambda. Memastikan lingkungan eksekusi tidak pernah dibagi antara penyewa yang berbeda IDs, menyediakan isolasi tingkat komputasi untuk aplikasi multi-penyewa.  
*Jenis*: [TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tenancyconfig.html)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[TenancyConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tenancyconfig)` properti `AWS::Lambda::Function` sumber daya.

 `Timeout`   <a name="sam-function-timeout"></a>
Waktu maksimum dalam detik bahwa fungsi dapat berjalan sebelum dihentikan.  
*Tipe*: Integer  
*Wajib*: Tidak  
*Default*: 3  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Timeout](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout)` properti `AWS::Lambda::Function` sumber daya.

 `Tracing`   <a name="sam-function-tracing"></a>
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 `Active` atau `PassThrough` dan `Role` properti tidak disetel, AWS SAM tambahkan `arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess` kebijakan ke peran eksekusi Lambda yang dibuatnya untuk Anda.  
Untuk informasi selengkapnya tentang X-Ray, lihat [Menggunakan AWS Lambda dengan AWS X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html) di *Panduan AWS Lambda Pengembang*.  
*Nilai yang valid*: [`Active`\| `Disabled` \|`PassThrough`]  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini mirip dengan `[TracingConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig)` properti `AWS::Lambda::Function` sumber daya.

 `VersionDescription`   <a name="sam-function-versiondescription"></a>
Menentukan bidang `Description` yang ditambahkan pada sumber daya versi Lambda baru.  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[Description](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description)` properti `AWS::Lambda::Version` sumber daya.

 `VersionDeletionPolicy`   <a name="sam-function-versiondeletionpolicy"></a>
Menentukan kebijakan penghapusan untuk sumber daya versi Lambda yang dibuat saat disetel. `AutoPublishAlias` Ini mengontrol apakah sumber daya versi dipertahankan atau dihapus saat tumpukan dihapus.  
*Nilai yang valid*: `Delete`, `Retain`, atau `Snapshot`  
*Tipe*: String  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini unik AWS SAM dan tidak memiliki CloudFormation padanan. Ini menetapkan `DeletionPolicy` atribut pada `AWS::Lambda::Version` sumber daya yang dihasilkan.

 `VpcConfig`   <a name="sam-function-vpcconfig"></a>
Konfigurasi yang memungkinkan fungsi ini mengakses sumber daya privat dalam virtual private cloud (VPC) Anda.  
*Jenis*: [VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)  
*Wajib*: Tidak  
*CloudFormation kompatibilitas*: Properti ini diteruskan langsung ke `[VpcConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html)` properti `AWS::Lambda::Function` sumber daya.

## Nilai Pengembalian
<a name="sam-resource-function-return-values"></a>

### Ref
<a name="sam-resource-function-return-values-ref"></a>

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 [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) di*Panduan Pengguna AWS CloudFormation *. 

### Fn:: GetAtt
<a name="sam-resource-function-return-values-fn--getatt"></a>

`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 [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html) di *Panduan Pengguna AWS CloudFormation *. 

`Arn`  <a name="Arn-fn::getatt"></a>
ARN fungsi Lambda utama.

## Contoh
<a name="sam-resource-function-examples"></a>

### Fungsi sederhana
<a name="sam-resource-function-examples-simple-function"></a>

Berikut ini adalah contoh dasar sumber daya [AWS::Serverless::Function](#sam-resource-function) dari tipe paket `Zip` (default) dan kode fungsi dalam bucket Amazon S3.

#### YAML
<a name="sam-resource-function-examples-simple-function--yaml"></a>

```
Type: AWS::Serverless::Function
Properties:
  Handler: index.handler
  Runtime: python3.9
  CodeUri: s3://{{bucket-name}}/{{key-name}}
```

### Contoh properti fungsi
<a name="sam-resource-function-examples-function-properties-example"></a>

Berikut ini adalah contoh dari [AWS::Serverless::Function](#sam-resource-function) jenis paket `Zip` (default) yang menggunakan`InlineCode`,`Layers`,`Tracing`,`Policies`, sistem `Amazon EFS` file, dan sumber `Api` peristiwa.

#### YAML
<a name="sam-resource-function-examples-function-properties-example--yaml"></a>

```
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
```

### ImageConfig contoh
<a name="sam-resource-function-examples-imageconfig-example"></a>

Berikut ini adalah contoh-contoh `ImageConfig` untuk fungsi Lambda dari tipe paket `Image`.

#### YAML
<a name="sam-resource-function-examples-imageconfig-example--yaml"></a>

```
HelloWorldFunction:
  Type: AWS::Serverless::Function
  Properties:
    PackageType: Image
    ImageUri: {{account-id}}.dkr.ecr.{{region}}.amazonaws.com/{{ecr-repo-name}}:{{image-name}}
    ImageConfig:
      Command:
        - "{{app.lambda_handler}}"
      EntryPoint:
        - "{{entrypoint1}}"
      WorkingDirectory: "{{workDir}}"
```

### RuntimeManagementConfig contoh
<a name="sam-resource-function-examples-runtimemanagementconfig-examples"></a>

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 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
<a name="sam-resource-function-examples-snapstart-examples"></a>

Contoh fungsi Lambda dengan SnapStart dihidupkan untuk versi masa depan:

```
TestFunc
  Type: AWS::Serverless::Function
  Properties:
    ...
    SnapStart:
      ApplyOn: PublishedVersions
```

### TenancyConfig contoh
<a name="sam-resource-function-examples-tenancyconfig-examples"></a>

Contoh fungsi Lambda dengan mode isolasi penyewa diaktifkan:

```
TestFunction
  Type: AWS::Serverless::Function
  Properties:
    ...
    TenancyConfig:
      TenantIsolationMode: PER_TENANT
```

### Contoh sistem file file S3
<a name="sam-resource-function-examples-s3files-example"></a>

Contoh berikut membuat fungsi Lambda yang memasang sistem file File Amazon S3. Template membuat bucket S3, sistem file File S3 yang didukung oleh bucket itu, target mount di subnet VPC, dan titik akses. Fungsi ini memasang titik akses di `/mnt/s3files` dan dapat membaca dan menulis file yang disinkronkan ke bucket S3.

**catatan**  
Anda dapat melampirkan sistem file Amazon EFS atau sistem file File S3 ke fungsi Lambda, tetapi tidak keduanya secara bersamaan.

#### YAML
<a name="sam-resource-function-examples-s3files-example--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: Lambda function with S3 Files file system

Resources:
  # VPC and networking
  MyVpc:
    Type: AWS::EC2::VPC
    Properties:
      CidrBlock: 10.0.0.0/16
      EnableDnsSupport: true
      EnableDnsHostnames: true

  MySubnet:
    Type: AWS::EC2::Subnet
    Properties:
      VpcId: !Ref MyVpc
      CidrBlock: 10.0.1.0/24
      AvailabilityZone: !Select [0, !GetAZs '']

  MySecurityGroup:
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: Security group for Lambda and S3 Files
      VpcId: !Ref MyVpc
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 2049
          ToPort: 2049
          CidrIp: 10.0.0.0/16

  # S3 bucket for file storage
  MyS3Bucket:
    Type: AWS::S3::Bucket

  # IAM role for S3 Files to access the bucket
  S3FilesRole:
    Type: AWS::IAM::Role
    Properties:
      AssumeRolePolicyDocument:
        Version: '2012-10-17'
        Statement:
          - Effect: Allow
            Principal:
              Service: elasticfilesystem.amazonaws.com
            Action: sts:AssumeRole
      Policies:
        - PolicyName: S3FilesBucketAccess
          PolicyDocument:
            Version: '2012-10-17'
            Statement:
              - Effect: Allow
                Action:
                  - s3:GetObject
                  - s3:PutObject
                  - s3:DeleteObject
                  - s3:ListBucket
                Resource:
                  - !GetAtt MyS3Bucket.Arn
                  - !Sub '${MyS3Bucket.Arn}/*'

  # S3 Files resources
  MyS3FilesFileSystem:
    Type: AWS::S3Files::FileSystem
    Properties:
      Bucket: !GetAtt MyS3Bucket.Arn
      RoleArn: !GetAtt S3FilesRole.Arn

  MyS3FilesMountTarget:
    Type: AWS::S3Files::MountTarget
    Properties:
      FileSystemId: !Ref MyS3FilesFileSystem
      SubnetId: !Ref MySubnet
      SecurityGroups:
        - !Ref MySecurityGroup

  MyS3FilesAccessPoint:
    Type: AWS::S3Files::AccessPoint
    Properties:
      FileSystemId: !Ref MyS3FilesFileSystem
      PosixUser:
        Uid: '1000'
        Gid: '1000'
      RootDirectory:
        Path: /lambda
        CreationInfo:
          OwnerUid: '1000'
          OwnerGid: '1000'
          Permissions: '750'

  # Lambda function with S3 Files mount
  MyFunction:
    Type: AWS::Serverless::Function
    DependsOn: MyS3FilesMountTarget
    Properties:
      Handler: index.handler
      Runtime: python3.12
      Timeout: 120
      VpcConfig:
        SecurityGroupIds:
          - !Ref MySecurityGroup
        SubnetIds:
          - !Ref MySubnet
      FileSystemConfigs:
        - Arn: !GetAtt MyS3FilesAccessPoint.AccessPointArn
          LocalMountPath: /mnt/s3files
      Policies:
        - Version: '2012-10-17'
          Statement:
            - Effect: Allow
              Action:
                - s3files:ClientMount
                - s3files:ClientWrite
              Resource: !GetAtt MyS3FilesAccessPoint.AccessPointArn
      InlineCode: |
        import os

        def handler(event, context):
            # Write a file to the S3 Files mount
            with open('/mnt/s3files/hello.txt', 'w') as f:
                f.write('Hello from Lambda!')

            # List files at the mount path
            files = os.listdir('/mnt/s3files')
            return {'files': files}
```