Referensi pengaturan aplikasi untuk Azure Functions
Pengaturan aplikasi dalam aplikasi fungsi berisi opsi konfigurasi yang memengaruhi semua fungsi untuk aplikasi fungsi tersebut. Pengaturan ini diakses sebagai variabel lingkungan. Artikel ini mencantumkan pengaturan aplikasi yang tersedia di aplikasi fungsi.
Ada beberapa cara yang dapat Anda tambahkan, perbarui, dan hapus pengaturan aplikasi fungsi:
Perubahan pada pengaturan aplikasi fungsi mengharuskan aplikasi fungsi Anda dimulai ulang.
Dalam artikel ini, contoh nilai string koneksi dipotong untuk keterbacaan.
Karena Azure Functions memanfaatkan platform Azure App Service untuk hosting, Anda mungkin menemukan beberapa pengaturan yang relevan dengan hosting aplikasi fungsi yang didokumenkan dalam variabel Lingkungan dan pengaturan aplikasi di Azure App Service.
Pertimbangan pengaturan aplikasi
Saat menggunakan pengaturan aplikasi, Anda harus mengetahui pertimbangan berikut:
Perubahan pada pengaturan aplikasi fungsi mengharuskan aplikasi fungsi Anda dimulai ulang.
Dalam mengatur nama, garis bawah ganda (
__
) dan titik dua (:
) dianggap sebagai nilai cadangan. Garis bawah ganda ditafsirkan sebagai pemisah hierarkis pada Windows dan Linux, dan titik dua ditafsirkan dengan cara yang sama hanya di Windows. Misalnya, pengaturanAzureFunctionsWebHost__hostid=somehost_123456
akan ditafsirkan sebagai objek JSON berikut:"AzureFunctionsWebHost": { "hostid": "somehost_123456" }
Dalam artikel ini, hanya garis bawah ganda yang digunakan, karena didukung pada kedua sistem operasi. Sebagian besar pengaturan yang mendukung koneksi identitas terkelola menggunakan garis bawah ganda.
Saat Functions berjalan secara lokal, pengaturan aplikasi ditentukan dalam
Values
koleksi di local.settings.json.Ada opsi konfigurasi global lainnya di file host.json dan di file local.settings.json.
Anda dapat menggunakan pengaturan aplikasi untuk mengganti pengaturan nilai host.json tanpa harus mengubah file host.json itu sendiri. Ini berguna untuk skenario ketika Anda perlu mengonfigurasi atau memodifikasi pengaturan host.json untuk lingkungan tertentu. Ini juga memungkinkan Anda mengubah pengaturan host.json tanpa harus menerbitkan ulang proyek Anda. Untuk mempelajari selengkapnya, lihat artikel referensi host.json.
Artikel ini mendokuensikan pengaturan yang paling relevan dengan aplikasi fungsi Anda. Karena Azure Functions berjalan di App Service, pengaturan aplikasi lain juga didukung. Untuk informasi selengkapnya, lihat Variabel lingkungan dan pengaturan aplikasi di Azure App Service.
Beberapa skenario juga mengharuskan Anda untuk bekerja dengan pengaturan yang didokumenkan di pengaturan situs App Service.
Mengubah pengaturan aplikasi App Service baca-saja dapat membuat aplikasi fungsi Anda menjadi status tidak responsif.
Berhati-hatilah saat memperbarui pengaturan aplikasi dengan menggunakan REST API, termasuk templat ARM. Karena API ini menggantikan pengaturan aplikasi yang ada, Anda harus menyertakan semua pengaturan yang ada saat menambahkan atau memodifikasi pengaturan menggunakan REST API atau templat ARM. Jika memungkinkan, gunakan Azure CLI atau Azure PowerShell untuk bekerja secara terprogram dengan pengaturan aplikasi. Untuk informasi selengkapnya, harap lihat Bekerja dengan pengaturan aplikasi.
APPINSIGHTS_INSTRUMENTATIONKEY
Kunci instrumentasi untuk Application Insights. Jangan gunakan dan APPINSIGHTS_INSTRUMENTATIONKEY
APPLICATIONINSIGHTS_CONNECTION_STRING
. Jika memungkinkan, gunakan APPLICATIONINSIGHTS_CONNECTION_STRING
. Saat Application Insights berjalan di sovereign cloud, Anda harus menggunakan APPLICATIONINSIGHTS_CONNECTION_STRING
. Untuk mempelajari selengkapnya, lihat Cara mengonfigurasi pemantauan untuk Azure Functions.
Tombol | Sampel nilai |
---|---|
APPINSIGHTS_INSTRUMENTATIONKEY | 55555555-af77-484b-9032-64f83bb83bb |
Jangan gunakan dan APPINSIGHTS_INSTRUMENTATIONKEY
APPLICATIONINSIGHTS_CONNECTION_STRING
. Penggunaan APPLICATIONINSIGHTS_CONNECTION_STRING
disarankan.
APPLICATIONINSIGHTS_AUTHENTICATION_STRING
Memungkinkan akses ke Application Insights dengan menggunakan autentikasi Microsoft Entra. Gunakan pengaturan ini saat Anda harus tersambung ke ruang kerja Application Insights dengan menggunakan autentikasi Microsoft Entra. Untuk informasi selengkapnya, lihat Autentikasi Microsoft Entra untuk Application Insights.
Saat Anda menggunakan APPLICATIONINSIGHTS_AUTHENTICATION_STRING
, nilai spesifik yang Anda tetapkan bergantung pada jenis identitas terkelola:
Identitas terkelola | Nilai pengaturan |
---|---|
Ditetapkan sistem | Authorization=AAD |
Ditetapkan pengguna | Authorization=AAD;ClientId=<USER_ASSIGNED_CLIENT_ID> |
Persyaratan autentikasi ini diterapkan ke koneksi dari host Functions, snapshot debugger, profiler, dan agen khusus bahasa apa pun. Untuk menggunakan pengaturan ini, identitas terkelola harus sudah tersedia untuk aplikasi fungsi, dengan peran yang ditetapkan setara dengan Penerbit Metrik Pemantauan.
Catatan
Saat menggunakan APPLICATIONINSIGHTS_AUTHENTICATION_STRING
untuk menyambungkan ke Application Insights menggunakan autentikasi Microsoft Entra, Anda juga harus Menonaktifkan autentikasi lokal untuk Application Insights. Konfigurasi ini memerlukan autentikasi Microsoft Entra agar telemetri diserap ke ruang kerja Anda.
APPLICATIONINSIGHTS_CONNECTION_STRING
String koneksi untuk Application Insights. Jangan gunakan dan APPINSIGHTS_INSTRUMENTATIONKEY
APPLICATIONINSIGHTS_CONNECTION_STRING
. Meskipun penggunaan APPLICATIONINSIGHTS_CONNECTION_STRING
disarankan dalam semua kasus, ini diperlukan dalam kasus berikut:
- Saat aplikasi fungsi Anda memerlukan penyesuaian tambahan yang didukung dengan menggunakan string koneksi.
- Saat instans Application Insights berjalan di sovereign cloud, yang memerlukan titik akhir kustom.
Untuk informasi selengkapnya, lihat String koneksi.
Tombol | Sampel nilai |
---|---|
APPLICATIONINSIGHTS_CONNECTION_STRING | InstrumentationKey=... |
Untuk menyambungkan ke Application Insights dengan autentikasi Microsoft Entra, Anda harus menggunakan APPLICATIONINSIGHTS_AUTHENTICATION_STRING
.
AZURE_FUNCTION_PROXY_DISABLE_LOCAL_CALL
Penting
Proksi Azure Functions adalah fitur warisan untuk versi 1.x hingga 3.x dari runtime Azure Functions. Untuk informasi selengkapnya tentang dukungan warisan di versi 4.x, lihat Proksi Functions.
Secara default, proksi Functionsmenggunakan pintasan untuk mengirim panggilan API dari proksi langsung ke fungsi di aplikasi fungsi yang sama. Pintasan ini digunakan alih-alih membuat permintaan HTTP baru. Pengaturan ini membuat Anda dapat menonaktifkan perilaku pintasan tersebut.
Tombol | Nilai | Deskripsi |
---|---|---|
AZURE_FUNCTION_PROXY_DISABLE_LOCAL_CALL | true |
Panggilan dengan URL backend yang menunjuk ke fungsi di aplikasi fungsi lokal tidak akan dikirim langsung ke fungsi tersebut. Sebaliknya, permintaan diarahkan kembali ke frontend HTTP untuk aplikasi fungsi. |
AZURE_FUNCTION_PROXY_DISABLE_LOCAL_CALL | false |
Panggilan dengan URL backend yang menunjuk ke fungsi di aplikasi fungsi lokal diteruskan langsung ke fungsi. false merupakan nilai defaultnya. |
AZURE_FUNCTION_PROXY_BACKEND_URL_DECODE_SLASHES
Penting
Proksi Azure Functions adalah fitur warisan untuk versi 1.x hingga 3.x dari runtime Azure Functions. Untuk informasi selengkapnya tentang dukungan warisan di versi 4.x, lihat Proksi Functions.
Pengaturan ini mengontrol apakah karakter %2F
didekodekan sebagai garis miring dalam parameter rute saat dimasukkan ke dalam URL backend.
Tombol | Nilai | Deskripsi |
---|---|---|
AZURE_FUNCTION_PROXY_BACKEND_URL_DECODE_SLASHES | true |
Parameter rute dengan garis miring yang dikodekan dibuka kodenya. |
AZURE_FUNCTION_PROXY_BACKEND_URL_DECODE_SLASHES | false |
Semua parameter rute diteruskan tanpa perubahan, yang merupakan perilaku default. |
Misalnya, pertimbangkan file proxies.json untuk aplikasi fungsi di domain myfunction.com
.
{
"$schema": "http://json.schemastore.org/proxies",
"proxies": {
"root": {
"matchCondition": {
"route": "/{*all}"
},
"backendUri": "example.com/{all}"
}
}
}
Ketika AZURE_FUNCTION_PROXY_BACKEND_URL_DECODE_SLASHES
diatur ke true
, URL example.com/api%2ftest
menyelesaikan ke example.com/api/test
. Secara default, URL tetap tidak berubah sebagai example.com/test%2fapi
. Untuk informasi selengkapnya, lihat Proksi fungsi.
AZURE_FUNCTIONS_ENVIRONMENT
Mengonfigurasi lingkungan hosting runtime aplikasi fungsi saat berjalan di Azure. Nilai ini dibaca selama inisialisasi, dan hanya nilai-nilai ini yang dihormati oleh runtime:
Nilai | Deskripsi |
---|---|
Production |
Mewakili lingkungan produksi, dengan pengurangan pengelogan dan pengoptimalan performa penuh. Ini adalah default ketika AZURE_FUNCTIONS_ENVIRONMENT tidak diatur atau diatur ke nilai yang tidak didukung. |
Staging |
Mewakili lingkungan penahapan, seperti saat berjalan di slot penahapan. |
Development |
Pengembangan dukungan lingkungan pengelogan yang lebih verbose dan pengoptimalan performa lainnya yang berkurang. Azure Functions Core Tools diatur AZURE_FUNCTIONS_ENVIRONMENT ke Development saat berjalan di komputer lokal Anda. Pengaturan ini tidak dapat ditimpa dalam file local.settings.json. |
Gunakan pengaturan ini alih-alih ASPNETCORE_ENVIRONMENT
saat Anda perlu mengubah lingkungan runtime di Azure menjadi sesuatu selain Production
. Untuk informasi selengkapnya, lihat Kelas dan metode Startup berbasis lingkungan.
Pengaturan ini tidak tersedia dalam runtime Functions versi 1.x.
AzureFunctionsJobHost__*
Di versi 2.x dan versi yang lebih baru dari runtime Functions, pengaturan aplikasi dapat mengganti pengaturan host.json di lingkungan saat ini. Penggantian ini dinyatakan sebagai pengaturan aplikasi bernama AzureFunctionsJobHost__path__to__setting
. Untuk informasi selengkapnya, lihat Menimpa nilai host.json.
AzureFunctionsWebHost__hostid
Mengatur ID host untuk aplikasi fungsi tertentu, yang seharusnya menjadi ID unik. Pengaturan ini mengambil alih nilai ID host yang dihasilkan secara otomatis untuk aplikasi Anda. Gunakan pengaturan ini hanya saat Anda perlu mencegah tabrakan ID host antara aplikasi fungsi yang berbagi akun penyimpanan yang sama.
ID host harus memenuhi persyaratan berikut:
- Antara 1 dan 32 karakter
- hanya berisi huruf kecil, angka, dan tanda hubung
- Tidak dimulai atau diakhir dengan tanda hubung
- Tidak berisi tanda hudah berturut-turut
Cara mudah untuk menghasilkan ID adalah dengan mengambil GUID, menghapus tanda hubung, dan membuatnya huruf kecil, seperti dengan mengonversi GUID 1835D7B5-5C98-4790-815D-072CC94C6F71
ke nilai 1835d7b55c984790815d072cc94c6f71
.
Tombol | Sampel nilai |
---|---|
AzureFunctionsWebHost__hostid | myuniquefunctionappname123456789 |
Untuk informasi selengkapnya, lihat Pertimbangan ID Host.
AzureWebJobsDashboard
Pengaturan ini tidak digunakan lagi dan hanya didukung saat berjalan pada versi 1.x dari runtime Azure Functions.
String koneksi akun penyimpanan opsional untuk menyimpan log dan menampilkannya di tab Monitor di portal. Akun penyimpanan harus merupakan akun tujuan umum yang mendukung blob, antrean, dan tabel. Untuk mempelajari selengkapnya, lihat Persyaratan akun Storage.
Tombol | Sampel nilai |
---|---|
AzureWebJobsDashboard | DefaultEndpointsProtocol=https;AccountName=... |
AzureWebJobsDisableHomepage
Nilai true
menonaktifkan halaman arahan default yang ditampilkan untuk URL akar aplikasi fungsi. Nilai defaultnya adalah false
.
Tombol | Sampel nilai |
---|---|
AzureWebJobsDisableHomepage | true |
Ketika pengaturan aplikasi ini dihilangkan atau diatur ke false
, halaman yang mirip dengan contoh berikut ditampilkan sebagai respons terhadap URL <functionappname>.azurewebsites.net
.
AzureWebJobsDotNetReleaseCompilation
true
berarti menggunakan mode Rilis saat mengompilasi kode .NET; false
berarti gunakan mode Debug. Defaultnya adalah true
.
Tombol | Sampel nilai |
---|---|
AzureWebJobsDotNetReleaseCompilation | true |
AzureWebJobsFeatureFlags
Daftar fitur beta yang dibatasi koma untuk mengaktifkan. Fitur beta yang diaktifkan oleh bendera ini tidak siap produksi, tetapi dapat diaktifkan untuk penggunaan eksperimental sebelum ditayangkan.
Tombol | Sampel nilai |
---|---|
AzureWebJobsFeatureFlags | feature1,feature2,EnableProxies |
Tambahkan EnableProxies
ke daftar ini untuk mengaktifkan kembali proksi pada runtime Functions versi 4.x saat Anda merencanakan migrasi ke Azure API Management. Untuk informasi selengkapnya, lihat Mengaktifkan kembali proksi di Functions v4.x.
AzureWebJobsKubernetesSecretName
Menunjukkan sumber daya Rahasia Kubernetes yang digunakan untuk menyimpan kunci. Hanya didukung saat dijalankan di Kubernetes. Pengaturan ini mengharuskan Anda untuk mengatur AzureWebJobsSecretStorageType
ke kubernetes
. Ketika AzureWebJobsKubernetesSecretName
tidak diatur, repositori dianggap baca saja. Dalam hal ini, nilai harus dihasilkan sebelum penyebaran. Azure Functions Core Tools menghasilkan nilai secara otomatis saat disebarkan ke Kubernetes.
Tombol | Sampel nilai |
---|---|
AzureWebJobsKubernetesSecretName | <SECRETS_RESOURCE> |
Untuk mempelajari selengkapnya, lihat Mengelola penyimpanan kunci.
AzureWebJobsSecretStorageKeyVaultClientId
ID klien identitas terkelola yang ditetapkan pengguna atau pendaftaran aplikasi yang digunakan untuk mengakses vault tempat kunci disimpan. Pengaturan ini mengharuskan Anda untuk mengatur AzureWebJobsSecretStorageType
ke keyvault
. Didukung di versi 4.x dan versi yang lebih baru dari runtime Functions.
Tombol | Sampel nilai |
---|---|
AzureWebJobsSecretStorageKeyVaultClientId | <CLIENT_ID> |
Untuk mempelajari selengkapnya, lihat Mengelola penyimpanan kunci.
AzureWebJobsSecretStorageKeyVaultClientSecret
Rahasia ID klien dari identitas terkelola yang ditetapkan pengguna atau pendaftaran aplikasi yang digunakan untuk mengakses brankas tempat kunci disimpan. Pengaturan ini mengharuskan Anda untuk mengatur AzureWebJobsSecretStorageType
ke keyvault
. Didukung di versi 4.x dan versi yang lebih baru dari runtime Functions.
Tombol | Sampel nilai |
---|---|
AzureWebJobsSecretStorageKeyVaultClientSecret | <CLIENT_SECRET> |
Untuk mempelajari selengkapnya, lihat Mengelola penyimpanan kunci.
AzureWebJobsSecretStorageKeyVaultName
Pengaturan ini tidak digunakan lagi dan hanya digunakan saat berjalan pada versi 3.x dari runtime Azure Functions.
Nama instans brankas kunci yang digunakan untuk menyimpan kunci. Pengaturan ini hanya digunakan dalam runtime Functions versi 3.x, yang tidak lagi didukung. Untuk versi 4.x, sebagai gantinya gunakan AzureWebJobsSecretStorageKeyVaultUri
. Pengaturan ini mengharuskan Anda untuk mengatur AzureWebJobsSecretStorageType
ke keyvault
.
Vault harus memiliki kebijakan akses yang sesuai dengan identitas terkelola sumber daya hosting yang ditetapkan sistem. Kebijakan akses harus memberi identitas izin rahasia berikut: Get
,Set
, List
, dan Delete
.
Saat fungsi Anda berjalan secara lokal, identitas pengembang digunakan, dan pengaturan harus berada dalam file local.settings.json.
Tombol | Sampel nilai |
---|---|
AzureWebJobsSecretStorageKeyVaultName | <VAULT_NAME> |
Untuk mempelajari selengkapnya, lihat Mengelola penyimpanan kunci.
AzureWebJobsSecretStorageKeyVaultTenantId
ID penyewa pendaftaran aplikasi yang digunakan untuk mengakses brankas tempat kunci disimpan. Pengaturan ini mengharuskan Anda untuk mengatur AzureWebJobsSecretStorageType
ke keyvault
. Didukung di versi 4.x dan versi yang lebih baru dari runtime Functions. Untuk mempelajari selengkapnya, lihat Mengelola penyimpanan kunci.
Tombol | Sampel nilai |
---|---|
AzureWebJobsSecretStorageKeyVaultTenantId | <TENANT_ID> |
AzureWebJobsSecretStorageKeyVaultUri
URI instans brankas kunci yang digunakan untuk menyimpan kunci. Didukung di versi 4.x dan versi yang lebih baru dari runtime Functions. Ini adalah pengaturan yang direkomendasikan untuk menggunakan instans brankas kunci untuk penyimpanan kunci. Pengaturan ini mengharuskan Anda untuk mengatur AzureWebJobsSecretStorageType
ke keyvault
.
Nilai AzureWebJobsSecretStorageKeyVaultUri
harus berupa nilai lengkap URI Vault yang ditampilkan di tab gambaran umum Key Vault, termasuk https://
.
Vault harus memiliki kebijakan akses yang sesuai dengan identitas terkelola sumber daya hosting yang ditetapkan sistem. Kebijakan akses harus memberi identitas izin rahasia berikut: Get
,Set
, List
, dan Delete
.
Saat fungsi Anda berjalan secara lokal, identitas pengembang digunakan, dan pengaturan harus berada dalam file local.settings.json.
Tombol | Sampel nilai |
---|---|
AzureWebJobsSecretStorageKeyVaultUri | https://<VAULT_NAME>.vault.azure.net |
Untuk mempelajari lebih lanjut, lihat Menggunakan referensi Key Vault untuk Azure Functions.
AzureWebJobsSecretStorageSas
URL SAS Blob Storage untuk akun penyimpanan kedua yang digunakan untuk penyimpanan kunci. Secara default, Functions menggunakan akun yang diatur dalam AzureWebJobsStorage
. Saat menggunakan opsi penyimpanan rahasia ini, pastikan bahwa AzureWebJobsSecretStorageType
tidak diatur atau diatur secara eksplisit ke blob
. Untuk mempelajari selengkapnya, lihat Mengelola penyimpanan kunci.
Tombol | Sampel nilai |
---|---|
AzureWebJobsSecretStorageSas | <BLOB_SAS_URL> |
AzureWebJobsSecretStorageType
Menentukan repositori atau penyedia yang akan digunakan untuk penyimpanan kunci. Kunci dienkripsi sebelum disimpan menggunakan kode unik untuk aplikasi fungsi Anda.
Tombol | Nilai | Deskripsi |
---|---|---|
AzureWebJobsSecretStorageType | blob |
Kunci disimpan dalam wadah penyimpanan Blob di akun yang disediakan oleh pengaturan AzureWebJobsStorage . Penyimpanan blob adalah perilaku default saat AzureWebJobsSecretStorageType tidak diatur.Untuk menentukan akun penyimpanan yang berbeda, gunakan pengaturan AzureWebJobsSecretStorageSas untuk menunjukkan URL SAS dari akun penyimpanan kedua. |
AzureWebJobsSecretStorageType | files |
Kunci tetap ada pada sistem file. Ini adalah perilaku default untuk Functions v1.x. |
AzureWebJobsSecretStorageType | keyvault |
Kunci disimpan dalam instans brankas kunci yang ditetapkan oleh AzureWebJobsSecretStorageKeyVaultName . |
AzureWebJobsSecretStorageType | kubernetes |
Hanya didukung saat menjalankan runtime Functions di Kube. Ketika AzureWebJobsKubernetesSecretName tidak diatur, repositori dianggap baca saja. Dalam hal ini, nilai harus dihasilkan sebelum penyebaran. Azure Functions Core Tools menghasilkan nilai secara otomatis saat disebarkan ke Kubernetes. |
Untuk mempelajari selengkapnya, lihat Mengelola penyimpanan kunci.
AzureWebJobsStorage
Menentukan string koneksi untuk akun Azure Storage yang digunakan runtime Functions untuk operasi normal. Beberapa penggunaan akun penyimpanan ini oleh Functions termasuk manajemen kunci, manajemen pemicu timer, dan titik pemeriksaan Azure Event Hubs. Akun penyimpanan harus merupakan akun tujuan umum yang mendukung blob, antrean, dan tabel. Untuk informasi selengkapnya, lihat Persyaratan akun Storage.
Tombol | Sampel nilai |
---|---|
AzureWebJobsStorage | DefaultEndpointsProtocol=https;AccountName=... |
Alih-alih string koneksi, Anda dapat menggunakan koneksi berbasis identitas untuk akun penyimpanan ini. Untuk informasi lebih lengkap, lihat Menyambung dengan penyimpanan hos yang memliki identitas.
AzureWebJobsStorage__accountName
Saat menggunakan koneksi penyimpanan berbasis identitas, atur nama akun akun penyimpanan alih-alih menggunakan string koneksi di AzureWebJobsStorage
. Sintaks ini unik untuk AzureWebJobsStorage
dan tidak dapat digunakan untuk koneksi berbasis identitas lainnya.
Tombol | Sampel nilai |
---|---|
AzureWebJobsStorage__accountName | <STORAGE_ACCOUNT_NAME> |
Untuk sovereign cloud atau saat menggunakan DNS kustom, Anda harus menggunakan pengaturan khusus AzureWebJobsStorage__*ServiceUri
layanan.
AzureWebJobsStorage__blobServiceUri
Saat menggunakan koneksi penyimpanan berbasis identitas, atur URI sarana data dari layanan blob akun penyimpanan.
Tombol | Sampel nilai |
---|---|
AzureWebJobsStorage__blobServiceUri | https://<STORAGE_ACCOUNT_NAME>.blob.core.windows.net |
Gunakan pengaturan ini alih-alih AzureWebJobsStorage__accountName
di sovereign cloud atau saat menggunakan DNS kustom. Untuk informasi lebih lengkap, lihat Menyambung dengan penyimpanan hos yang memliki identitas.
AzureWebJobsStorage__queueServiceUri
Saat menggunakan koneksi penyimpanan berbasis identitas, atur URI sarana data dari layanan antrean akun penyimpanan.
Tombol | Sampel nilai |
---|---|
AzureWebJobsStorage__queueServiceUri | https://<STORAGE_ACCOUNT_NAME>.queue.core.windows.net |
Gunakan pengaturan ini alih-alih AzureWebJobsStorage__accountName
di sovereign cloud atau saat menggunakan DNS kustom. Untuk informasi lebih lengkap, lihat Menyambung dengan penyimpanan hos yang memliki identitas.
AzureWebJobsStorage__tableServiceUri
Saat menggunakan koneksi penyimpanan berbasis identitas, mengatur URI sarana data dari layanan tabel akun penyimpanan.
Tombol | Sampel nilai |
---|---|
AzureWebJobsStorage__tableServiceUri | https://<STORAGE_ACCOUNT_NAME>.table.core.windows.net |
Gunakan pengaturan ini alih-alih AzureWebJobsStorage__accountName
di sovereign cloud atau saat menggunakan DNS kustom. Untuk informasi lebih lengkap, lihat Menyambung dengan penyimpanan hos yang memliki identitas.
AzureWebJobs_TypeScriptPath
Jalur ke kompiler yang digunakan untuk TypeScript. Membuat Anda dapat mengganti defaultnya jika perlu.
Tombol | Sampel nilai |
---|---|
AzureWebJobs_TypeScriptPath | %HOME%\typescript |
DOCKER_REGISTRY_SERVER_PASSWORD
Menunjukkan kata sandi yang digunakan untuk mengakses registri kontainer privat. Pengaturan ini hanya diperlukan saat menyebarkan aplikasi fungsi kontainer Anda dari registri kontainer privat. Untuk informasi selengkapnya, lihat Variabel lingkungan dan pengaturan aplikasi di Azure App Service.
DOCKER_REGISTRY_SERVER_URL
Menunjukkan URL registri kontainer privat. Pengaturan ini hanya diperlukan saat menyebarkan aplikasi fungsi kontainer Anda dari registri kontainer privat. Untuk informasi selengkapnya, lihat Variabel lingkungan dan pengaturan aplikasi di Azure App Service.
DOCKER_REGISTRY_SERVER_USERNAME
Menunjukkan akun yang digunakan untuk mengakses registri kontainer privat. Pengaturan ini hanya diperlukan saat menyebarkan aplikasi fungsi kontainer Anda dari registri kontainer privat. Untuk informasi selengkapnya, lihat Variabel lingkungan dan pengaturan aplikasi di Azure App Service.
DOCKER_SHM_SIZE
Mengatur ukuran memori bersama (dalam byte) saat pekerja Python menggunakan memori bersama. Untuk mempelajari selengkapnya, lihat Memori bersama.
Tombol | Sampel nilai |
---|---|
DOCKER_SHM_SIZE | 268435456 |
Nilai di atas menetapkan ukuran memori bersama ~256 MB.
Mengharuskan FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED
diatur ke 1
.
ENABLE_ORYX_BUILD
Menunjukkan apakah sistem build Oryx digunakan selama penyebaran. ENABLE_ORYX_BUILD
harus diatur ke true
saat melakukan penyebaran build jarak jauh ke Linux. Untuk informasi selengkapnya, lihat Build jarak jauh.
Tombol | Sampel nilai |
---|---|
ENABLE_ORYX_BUILD | true |
FUNCTION_APP_EDIT_MODE
Menunjukkan apakah Anda dapat mengedit aplikasi fungsi di portal Azure. Nilai yang berlaku adalah readwrite
atau readonly
.
Tombol | Sampel nilai |
---|---|
FUNCTION_APP_EDIT_MODE | readonly |
Nilai diatur oleh runtime berdasarkan tumpukan bahasa dan status penyebaran aplikasi fungsi Anda. Untuk informasi selengkapnya, lihat Batasan pengembangan di portal Azure.
FUNCTIONS_EXTENSION_VERSION
Versi runtime Functions yang menjadi host aplikasi fungsi Anda. Tilde (~
) dengan versi utama berarti gunakan versi terbaru dari versi utama tersebut (misalnya, ~4
). Saat versi minor baru dari versi utama yang sama tersedia, versi tersebut secara otomatis diinstal di aplikasi fungsi.
Tombol | Sampel nilai |
---|---|
FUNCTIONS_EXTENSION_VERSION | ~4 |
Nilai versi runtime utama berikut ini didukung:
Nilai | Target runtime | Komentar |
---|---|---|
~4 |
4.x | Direkomendasikan |
~1 |
1.x | Dukungan berakhir 14 September 2026 |
Nilai ~4
berarti bahwa aplikasi Anda berjalan pada versi 4.x dari runtime. Nilai ~1
menyematkan aplikasi Anda ke versi 1.x dari runtime. Runtime versi 2.x dan 3.x tidak lagi didukung. Untuk informasi selengkapnya, lihat Ringkasan versi runtime Azure Functions.
Jika diminta oleh dukungan untuk menyematkan aplikasi Anda ke versi minor tertentu, gunakan nomor versi lengkap (misalnya, 4.0.12345
). Untuk informasi selengkapnya, lihat Cara menargetkan versi runtime Azure Functions.
FUNCTIONS_INPROC_NET8_ENABLED
Menunjukkan apakah ke aplikasi dapat menggunakan .NET 8 pada model dalam proses. Untuk menggunakan .NET 8 pada model dalam proses, nilai ini harus diatur ke 1
. Lihat Memperbarui ke target .NET 8 untuk instruksi lengkap, termasuk nilai konfigurasi lain yang diperlukan.
Tombol | Sampel nilai |
---|---|
FUNCTIONS_INPROC_NET8_ENABLED | 1 |
Atur ke 0
untuk menonaktifkan dukungan untuk .NET 8 pada model dalam proses.
FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERROR
Pengaturan aplikasi ini adalah cara sementara bagi aplikasi Node.js untuk mengaktifkan perubahan yang melanggar yang membuat kesalahan titik masuk lebih mudah untuk memecahkan masalah pada Node.js v18 atau lebih rendah. Sangat disarankan untuk menggunakan true
, terutama untuk aplikasi model pemrograman v4, yang selalu menggunakan file titik masuk. Perilaku tanpa perubahan yang melanggar (false
) mengabaikan kesalahan titik masuk dan tidak mencatatnya di Application Insights.
Dimulai dengan Node.js v20, pengaturan aplikasi tidak berpengaruh dan perilaku perubahan yang melanggar selalu diaktifkan.
Untuk Node.js v18 atau yang lebih rendah, pengaturan aplikasi digunakan, dan perilaku default bergantung pada apakah kesalahan terjadi sebelum atau sesudah fungsi model v4 terdaftar:
- Jika kesalahan dilemparkan sebelumnya (misalnya jika Anda menggunakan model v3 atau file titik masuk Anda tidak ada), perilaku default cocok
false
. - Jika kesalahan muncul setelah (misalnya jika Anda mencoba mendaftarkan fungsi model duplikat v4), perilaku default cocok
true
dengan .
Tombol | Nilai | Deskripsi |
---|---|---|
FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERROR | true |
Blokir kesalahan titik masuk dan catat di Application Insights. |
FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERROR | false |
Abaikan kesalahan titik entri dan jangan catat di Application Insights. |
FUNCTIONS_REQUEST_BODY_SIZE_LIMIT
Mengambil alih batas default pada ukuran isi permintaan yang dikirim ke titik akhir HTTP. Nilai diberikan dalam byte, dengan ukuran permintaan maksimum default 104857600 byte.
Tombol | Sampel nilai |
---|---|
FUNCTIONS_REQUEST_BODY_SIZE_LIMIT | 250000000 |
FUNCTIONS_V2_COMPATIBILITY_MODE
Penting
Pengaturan ini tidak lagi didukung. Awalnya disediakan untuk mengaktifkan solusi jangka pendek untuk aplikasi yang menargetkan runtime v2.x untuk dapat berjalan pada runtime v3.x saat masih didukung. Kecuali untuk aplikasi warisan yang berjalan pada versi 1.x, semua aplikasi fungsi harus berjalan pada versi 4.x dari runtime Functions: FUNCTIONS_EXTENSION_VERSION=~4
. Untuk informasi selengkapnya, lihat Ringkasan versi runtime Azure Functions.
FUNCTIONS_WORKER_PROCESS_COUNT
Menentukan jumlah maksimum proses pekerja bahasa, dengan nilai default 1
. Nilai maksimum yang diperbolehkan adalah 10
. Pemanggilan fungsi didistribusikan secara merata di antara proses pekerja bahasa. Proses pekerja bahasa diluncurkan setiap 10 detik hingga jumlah yang ditetapkan tercapai FUNCTIONS_WORKER_PROCESS_COUNT
. Menggunakan beberapa proses pekerja bahasa tidak sama dengan penskalakan. Pertimbangkan untuk menggunakan pengaturan ini saat beban kerja Anda memiliki campuran pemanggilan CPU-terikat dan I/O-terikat. Pengaturan ini berlaku untuk semua runtime bahasa, kecuali untuk .NET yang berjalan dalam proses (FUNCTIONS_WORKER_RUNTIME=dotnet
).
Tombol | Sampel nilai |
---|---|
FUNCTIONS_WORKER_PROCESS_COUNT | 2 |
FUNCTIONS_WORKER_RUNTIME
Tumpukan bahasa atau bahasa runtime pekerja untuk dimuat di aplikasi fungsi. Ini berhubungan dengan bahasa yang digunakan dalam aplikasi Anda (misalnya, python
). Dimulai dengan runtime Azure Functions versi 2.x, aplikasi fungsi tertentu hanya dapat mendukung satu bahasa.
Tombol | Sampel nilai |
---|---|
FUNCTIONS_WORKER_RUNTIME | node |
Nilai yang valid:
Nilai | Tumpukan bahasa/bahasa |
---|---|
dotnet |
C# (pustaka kelas) C# (skrip) |
dotnet-isolated |
C# (proses pekerja terisolasi) |
java |
Java |
node |
JavaScript TypeScript |
powershell |
PowerShell |
python |
Python |
custom |
Lainnya |
FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED
Pengaturan ini memungkinkan pekerja Python menggunakan memori bersama untuk meningkatkan throughput. Aktifkan memori bersama saat aplikasi fungsi Python Anda mengalami penyempitan memori.
Tombol | Sampel nilai |
---|---|
FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED | 1 |
Dengan mengaktifkan pengaturan ini, Anda dapat menggunakan pengaturan DOCKER_SHM_SIZE untuk mengatur ukuran memori bersama. Untuk mempelajari selengkapnya, lihat Memori bersama.
JAVA_OPTS
Digunakan untuk menyesuaikan komputer virtual Java (JVM) yang digunakan untuk menjalankan fungsi Java Anda saat berjalan pada paket Premium atau Paket khusus. Saat berjalan pada paket Konsumsi, sebagai gantinya gunakan languageWorkers__java__arguments
. Untuk informasi selengkapnya, lihat Menyesuaikan JVM.
languageWorkers__java__arguments
Digunakan untuk menyesuaikan komputer virtual Java (JVM) yang digunakan untuk menjalankan fungsi Java Anda saat berjalan pada paket Konsumsi. Pengaturan ini meningkatkan waktu mulai dingin untuk fungsi Java yang berjalan dalam paket Konsumsi. Untuk paket Premium atau Khusus, sebagai gantinya gunakan JAVA_OPTS
. Untuk informasi selengkapnya, lihat Menyesuaikan JVM.
MDMaxBackgroundUpgradePeriod
Mengontrol periode pembaruan latar belakang dependensi terkelola untuk aplikasi fungsi PowerShell, dengan nilai default 7.00:00:00
(mingguan).
Setiap proses pekerja PowerShell memulai pemeriksaan untuk peningkatan modul di Galeri PowerShell pada proses mulai dan setiap MDMaxBackgroundUpgradePeriod
setelah itu. Saat versi modul baru tersedia di Galeri PowerShell, modul tersebut diinstal ke sistem file dan tersedia untuk pekerja PowerShell. Mengurangi nilai ini memungkinkan aplikasi fungsi Anda mendapatkan versi modul yang lebih baru lebih cepat, tetapi juga meningkatkan penggunaan sumber daya aplikasi (I/O jaringan, CPU, penyimpanan). Meningkatkan nilai ini mengurangi penggunaan sumber daya aplikasi, tetapi juga dapat menunda pengiriman versi modul baru ke aplikasi Anda.
Tombol | Sampel nilai |
---|---|
MDMaxBackgroundUpgradePeriod | 7.00:00:00 |
Untuk mempelajari lebih lanjut, lihat Manajemen dependensi.
MDNewSnapshotCheckPeriod
Menentukan seberapa sering setiap pekerja PowerShell memeriksa apakah peningkatan dependensi terkelola telah dipasang. Frekuensi defaultnya adalah 01:00:00
(per jam).
Setelah versi modul baru diinstal ke sistem file, setiap proses pekerja PowerShell harus dimulai ulang. Memulai ulang pekerja PowerShell memengaruhi ketersediaan aplikasi Anda karena dapat mengganggu eksekusi fungsi saat ini. Hingga semua proses pekerja PowerShell dimulai ulang, pemanggilan fungsi dapat menggunakan versi modul lama atau baru. Memulai ulang semua pekerja PowerShell selesai dalam MDNewSnapshotCheckPeriod
.
Dalam setiap MDNewSnapshotCheckPeriod
, pekerja PowerShell memeriksa apakah peningkatan dependensi yang dikelola telah diinstal atau belum. Ketika pemutakhiran telah diinstal, hidupkan ulang dimulai. Menambah nilai ini mengurangi frekuensi gangguan karena hidupkan ulang. Namun, peningkatan juga dapat meningkatkan waktu selama pemanggilan fungsi dapat menggunakan versi modul lama atau baru, secara nondeterministik.
Tombol | Sampel nilai |
---|---|
MDNewSnapshotCheckPeriod | 01:00:00 |
Untuk mempelajari lebih lanjut, lihat Manajemen dependensi.
MDMinBackgroundUpgradePeriod
Jangka waktu setelah pemeriksaan peningkatan dependensi terkelola sebelumnya sebelum pemeriksaan pemutakhiran lainnya dimulai, dengan default 1.00:00:00
(harian).
Untuk menghindari upgrade modul yang berlebihan pada setiap restart Pekerja, pemeriksaan upgrade modul tidak dilakukan ketika ada pekerja yang telah memulai pemeriksaan itu di akhir MDMinBackgroundUpgradePeriod
.
Tombol | Sampel nilai |
---|---|
MDMinBackgroundUpgradePeriod | 1.00:00:00 |
Untuk mempelajari lebih lanjut, lihat Manajemen dependensi.
PIP_INDEX_URL
Pengaturan ini memungkinkan Anda mengambil alih URL dasar Indeks Paket Python, yang secara default adalah https://pypi.org/simple
. Gunakan pengaturan ini saat Anda perlu menjalankan build jarak jauh menggunakan dependensi kustom. Dependensi kustom ini dapat berada dalam repositori indeks paket yang sesuai dengan PEP 503 (API repositori sederhana) atau dalam direktori lokal yang mengikuti format yang sama.
Tombol | Sampel nilai |
---|---|
PIP_INDEX_URL | http://my.custom.package.repo/simple |
Untuk mempelajari selengkapnya, lihat dokumentasi pip
untuk --index-url
Dependensi kustom di dalam referensi pengembang Python.
PIP_EXTRA_INDEX_URL
Nilai untuk pengaturan ini menunjukkan URL indeks tambahan untuk paket kustom untuk aplikasi Python, untuk digunakan selain --index-url
. Gunakan pengaturan ini saat Anda perlu menjalankan build jarak jauh menggunakan dependensi kustom yang ditemukan dalam indeks paket tambahan. Harus mengikuti aturan yang sama dengan --index-url
.
Tombol | Sampel nilai |
---|---|
PIP_EXTRA_INDEX_URL | http://my.custom.package.repo/simple |
Untuk mempelajari selengkapnya, lihat dokumentasi pip
untuk --extra-index-url
Dependensi kustom di dalam referensi pengembang Python.
PROJECT
Pengaturan penyebaran berkelanjutan yang memberi tahu layanan penyebaran Kudu folder di repositori yang terhubung ke lokasi proyek yang dapat disebarkan.
Tombol | Sampel nilai |
---|---|
PROJECT | WebProject/WebProject.csproj |
PYTHON_ISOLATE_WORKER_DEPENDENCIES
Konfigurasi ini khusus untuk aplikasi fungsi Python. Ini mendefinisikan penentuan prioritas urutan pemuatan modul. Secara default, nilai ini diset ke 0
.
Tombol | Nilai | Deskripsi |
---|---|---|
PYTHON_ISOLATE_WORKER_DEPENDENCIES | 0 |
Prioritaskan memuat pustaka Python dari dependensi pekerja Python internal, yang merupakan perilaku default. Pustaka pihak ketiga yang ditentukan dalam requirements.txt mungkin dibayangi. |
PYTHON_ISOLATE_WORKER_DEPENDENCIES | 1 |
Prioritaskan memuat pustaka Python dari paket aplikasi yang ditentukan dalam requirements.txt. Ini mencegah pustaka Anda bertumbuk dengan pustaka worker Python internal. |
PYTHON_ENABLE_DEBUG_LOGGING
Mengaktifkan pengelogan tingkat debug di aplikasi fungsi Python. Nilai 1
mengaktifkan pengelogan tingkat debug. Tanpa pengaturan ini atau dengan nilai 0
, hanya informasi dan log tingkat yang lebih tinggi yang dikirim dari pekerja Python ke host Functions. Gunakan pengaturan ini saat menelusuri kesalahan atau melacak eksekusi fungsi Python Anda.
Saat men-debug fungsi Python, pastikan untuk juga mengatur debug atau lacak level logging di file host.json, sesuai kebutuhan. Untuk mempelajari selengkapnya, lihat Cara mengonfigurasi pemantauan untuk Azure Functions.
PYTHON_ENABLE_WORKER_EXTENSIONS
Konfigurasi ini khusus untuk aplikasi fungsi Python. Mengatur ini untuk 1
memungkinkan worker memuat ekstensi worker Python yang ditentukan dalam requirements.txt. Ini memungkinkan aplikasi fungsi Anda untuk mengakses fitur baru yang disediakan oleh paket pihak ketiga. Ini juga dapat mengubah perilaku beban fungsi dan pemanggilan di aplikasi Anda. Pastikan ekstensi yang Anda pilih dapat dipercaya karena Anda menanggung risiko menggunakannya. Azure Functions tidak memberikan jaminan tegas ke ekstensi apa pun. Untuk cara menggunakan ekstensi, kunjungi halaman manual ekstensi atau dokumen readme. Secara default, nilai ini diatur ke 0
.
Tombol | Nilai | Deskripsi |
---|---|---|
PYTHON_ENABLE_WORKER_EXTENSIONS | 0 |
Nonaktifkan ekstensi worker Python apa pun. |
PYTHON_ENABLE_WORKER_EXTENSIONS | 1 |
Izinkan worker Python memuat ekstensi dari requirements.txt. |
PYTHON_THREADPOOL_THREAD_COUNT
Menentukan jumlah maksimum alur yang akan digunakan pekerja bahasa Python untuk menjalankan pemanggilan fungsi, dengan nilai default 1
untuk versi Python 3.8
dan yang dibawahnya. Untuk versi Python 3.9
ke atas, nilainya diatur ke None
. Pengaturan ini tidak menjamin jumlah utas yang akan ditetapkan selama eksekusi. Pengaturan ini membuat Python dapat memperluas jumlah alur ke nilai yang ditentukan. Pengaturan ini hanya berlaku untuk aplikasi fungsi Python. Selain itu, pengaturan ini berlaku ini untuk pemanggilan fungsi sinkron dan bukan untuk korutin.
Tombol | Sampel nilai | Nilai maks |
---|---|---|
PYTHON_THREADPOOL_THREAD_COUNT | 2 | 32 |
SCALE_CONTROLLER_LOGGING_ENABLED
Setelan ini saat ini sedang dalam pratinjau.
Pengaturan ini mengontrol pencatatan dari pengontrol skala Azure Functions. Untuk informasi selengkapnya, lihat Log pengontrol Skala.
Tombol | Sampel nilai |
---|---|
SCALE_CONTROLLER_LOGGING_ENABLED | AppInsights:Verbose |
Nilai untuk kunci ini disediakan dalam format <DESTINATION>:<VERBOSITY>
, yang didefinisikan sebagai berikut:
Properti | Deskripsi |
---|---|
<DESTINATION> |
Tujuan pengiriman log. Nilai yang berlaku adalah AppInsights atau Blob .Saat Anda menggunakan AppInsights , pastikan Application Insights diaktifkan di aplikasi fungsi Anda.Ketika Anda mengatur tujuan ke Blob , log dibuat dalam kontainer gumpalan bernama azure-functions-scale-controller dalam akun penyimpanan default yang diatur dalam pengaturan aplikasi AzureWebJobsStorage . |
<VERBOSITY> |
Menentukan tingkat pencatatan. Nilai yang didukung adalah None , Warning , dan Verbose .Ketika diatur ke Verbose , pengontrol skala mencatat alasan untuk setiap perubahan dalam jumlah pekerja, serta informasi tentang pemicu yang memperhitungkan keputusan tersebut. Log verbose termasuk peringatan pemicu dan hash yang digunakan oleh pemicu sebelum dan sesudah pengontrol skala berjalan. |
Tip
Perlu diingat bahwa saat Anda membiarkan pencatatan pengontrol skala diaktifkan, itu berdampak pada biaya potensial untuk memantau aplikasi fungsi Anda. Pertimbangkan untuk mengaktifkan pembuatan log hingga Anda mengumpulkan cukup data untuk memahami bagaimana skala pengontrol berperilaku, dan kemudian menonaktifkannya.
SCM_DO_BUILD_DURING_DEPLOYMENT
Mengontrol perilaku build jarak jauh selama penyebaran. Ketika SCM_DO_BUILD_DURING_DEPLOYMENT
diatur ke true
, proyek dibangun dari jarak jauh selama penyebaran.
Tombol | Sampel nilai |
---|---|
SCM_DO_BUILD_DURING_DEPLOYMENT | true |
SCM_LOGSTREAM_TIMEOUT
Kontrol batas waktu, dalam hitungan detik, saat tersambung ke log streaming. Nilai default adalah 7200 (2 jam).
Tombol | Sampel nilai |
---|---|
SCM_LOGSTREAM_TIMEOUT | 1800 |
Nilai sampel 1800
di atas menetapkan batas waktu 30 menit. Untuk informasi selengkapnya, lihat Mengaktifkan log eksekusi streaming di Azure Functions.
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
String koneksi untuk akun penyimpanan tempat kode dan konfigurasi aplikasi fungsi disimpan dalam rencana penskalaan yang digerakkan oleh peristiwa. Untuk informasi selengkapnya, lihat Pengaturan koneksi akun penyimpanan.
Tombol | Sampel nilai |
---|---|
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING | DefaultEndpointsProtocol=https;AccountName=... |
Pengaturan ini diperlukan untuk aplikasi paket Konsumsi dan Premium Elastis yang berjalan di Windows dan Linux. Pengaturan ini tidak digunakan bagi aplikasi paket Khusus, yang tidak diskalakan secara dinamis oleh Functions.
Mengubah atau menghapus pengaturan ini dapat menyebabkan aplikasi fungsi Anda tidak dimulai. Untuk mempelajari selengkapnya, lihat artikel pemecahan masalah ini.
Azure Files tidak mendukung penggunaan identitas terkelola saat mengakses berbagi file. Untuk informasi selengkapnya, lihat Skenario autentikasi yang didukung Azure Files.
WEBSITE_CONTENTOVERVNET
Penting
WEBSITE_CONTENTOVERVNET adalah pengaturan aplikasi warisan yang telah digantikan oleh properti situs vnetContentShareEnabled .
Nilai 1
membuat aplikasi fungsi Anda dapat menskalakan saat akun penyimpanan Anda dibatasi ke jaringan virtual. Anda harus mengaktifkan pengaturan ini saat membatasi akun penyimpanan Anda ke jaringan virtual. Hanya diperlukan saat menggunakan WEBSITE_CONTENTSHARE
dan WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
. Untuk mempelajari selengkapnya, lihat Membatasi akun penyimpanan Anda ke jaringan virtual.
Tombol | Sampel nilai |
---|---|
WEBSITE_CONTENTOVERVNET | 1 |
Pengaturan aplikasi ini diperlukan pada paket Elastic Premium dan Dedicated (App Service) (Standar dan lebih tinggi). Tidak didukung saat menjalankan paket Konsumsi.
Catatan
Anda harus berhati-hati saat merutekan ke berbagi konten di akun penyimpanan yang dibagikan oleh beberapa aplikasi fungsi dalam paket yang sama. Untuk informasi selengkapnya, lihat Perutean yang konsisten melalui jaringan virtual di artikel Pertimbangan penyimpanan.
WEBSITE_CONTENTSHARE
Nama berbagi file yang digunakan Functions untuk menyimpan kode aplikasi fungsi dan file konfigurasi. Konten ini diperlukan oleh rencana penskalakan berbasis peristiwa. Digunakan dengan WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
. Defaultnya adalah string unik yang dihasilkan oleh runtime, yang dimulai dengan nama aplikasi fungsi. Untuk informasi selengkapnya, lihat Pengaturan koneksi akun penyimpanan.
Tombol | Sampel nilai |
---|---|
WEBSITE_CONTENTSHARE | functionapp091999e2 |
Pengaturan ini digunakan bagi aplikasi paket Konsumsi dan Premium pada Windows dan Linux. Pengaturan ini tidak digunakan bagi aplikasi paket Khusus, yang tidak diskalakan secara dinamis oleh Functions.
Berbagi dibuat saat aplikasi fungsi Anda dibuat. Mengubah atau menghapus pengaturan ini dapat menyebabkan aplikasi fungsi Anda tidak dimulai. Untuk mempelajari selengkapnya, lihat artikel pemecahan masalah ini.
Pertimbangan berikut berlaku saat menggunakan templat Azure Resource Manager (ARM) atau file Bicep untuk membuat aplikasi fungsi selama penyebaran:
- Saat Anda tidak menetapkan nilai
WEBSITE_CONTENTSHARE
untuk aplikasi fungsi utama atau aplikasi apa pun di slot, nilai berbagi unik dibuat untuk Anda. Tidak mengaturWEBSITE_CONTENTSHARE
adalah pendekatan yang direkomendasikan untuk penyebaran templat ARM. - Ada skenario di mana Anda harus mengatur
WEBSITE_CONTENTSHARE
nilai ke nilai yang telah ditentukan sebelumnya, seperti saat Anda menggunakan akun penyimpanan aman di jaringan virtual. Dalam hal ini, Anda harus menetapkan nama berbagi unik untuk aplikasi fungsi utama dan aplikasi untuk setiap slot penyebaran. Dalam kasus akun penyimpanan yang diamankan oleh jaringan virtual, Anda juga harus membuat berbagi itu sendiri sebagai bagian dari penyebaran otomatis Anda. Untuk informasi selengkapnya, lihat Penyebaran aman. - Jangan membuat
WEBSITE_CONTENTSHARE
pengaturan slot. - Saat Anda menentukan
WEBSITE_CONTENTSHARE
, nilai harus mengikuti panduan ini untuk nama berbagi.
WEBSITE_DNS_SERVER
Mengatur server DNS yang digunakan oleh aplikasi saat menyelesaikan alamat IP. Pengaturan ini sering diperlukan saat menggunakan fungsionalitas jaringan tertentu, seperti Zona privat Azure DNS dan titik akhir privat.
Tombol | Sampel nilai |
---|---|
WEBSITE_DNS_SERVER | 168.63.129.16 |
WEBSITE_ENABLE_BROTLI_ENCODING
Mengontrol apakah pengkodean Brotli digunakan untuk kompresi alih-alih kompresi gzip default. Saat WEBSITE_ENABLE_BROTLI_ENCODING
diatur ke 1
, pengkodean Brotli digunakan; jika tidak, pengkodean gzip digunakan.
WEBSITE_FUNCTIONS_ARMCACHE_ENABLED
Menonaktifkan penembolokan saat menyebarkan aplikasi fungsi menggunakan templat Azure Resource Manager (ARM).
Tombol | Sampel nilai |
---|---|
WEBSITE_FUNCTIONS_ARMCACHE_ENABLED | 0 |
WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT
Jumlah maksimum instans yang dapat diperluas skalanya oleh aplikasi. Defaultnya adalah tidak terbatas.
Penting
Pengaturan ini dalam tinjauan. Properti aplikasi untuk peluasan skala maksimum fungsi telah ditambahkan dan merupakan cara yang disarankan untuk membatasi peluasan skala.
Tombol | Sampel nilai |
---|---|
WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT | 5 |
WEBSITE_NODE_DEFAULT_VERSION
Hanya Windows.
Mengatur versi aplikasi Node.js digunakan saat menjalankan aplikasi fungsi Anda di Windows. Anda harus menggunakan tilde (~) agar runtime menggunakan versi terbaru yang tersedia dari versi utama yang ditargetkan. Misalnya, ketika diatur ke ~18
, versi terbaru Node.js 18 digunakan. Saat versi utama ditargetkan dengan tilde, Anda tidak perlu memperbarui versi minor secara manual.
Tombol | Sampel nilai |
---|---|
WEBSITE_NODE_DEFAULT_VERSION | ~18 |
WEBSITE_OVERRIDE_STICKY_DIAGNOSTICS_SETTINGS
Saat melakukan pertukaran slot pada aplikasi fungsi yang berjalan pada paket Premium, pertukaran dapat gagal ketika akun penyimpanan khusus yang digunakan oleh aplikasi dibatasi jaringan. Kegagalan ini disebabkan oleh fitur pengelogan aplikasi warisan, yang dibagikan oleh Functions dan App Service. Pengaturan ini mengambil alih fitur pengelogan warisan dan memungkinkan pertukaran terjadi.
Tombol | Sampel nilai |
---|---|
WEBSITE_OVERRIDE_STICKY_DIAGNOSTICS_SETTINGS | 0 |
Tambahkan WEBSITE_OVERRIDE_STICKY_DIAGNOSTICS_SETTINGS
dengan nilai 0
ke semua slot untuk memastikan bahwa pengaturan diagnostik warisan tidak memblokir pertukaran Anda. Anda juga dapat menambahkan pengaturan dan nilai ini hanya ke slot produksi sebagai pengaturan slot penyebaran (lengket).
WEBSITE_OVERRIDE_STICKY_EXTENSION_VERSIONS
Secara default, pengaturan versi untuk aplikasi fungsi khusus untuk setiap slot. Pengaturan ini digunakan saat meningkatkan fungsi dengan menggunakan slot penyebaran. Hal ini mencegah perilaku tak terduga karena mengubah versi setelah pertukaran. Atur ke 0
dalam produksi dan dalam slot untuk memastikan bahwa semua pengaturan versi juga ditukar. Untuk informasi selengkapnya, lihat Meningkatkan menggunakan slot.
Tombol | Sampel nilai |
---|---|
WEBSITE_OVERRIDE_STICKY_EXTENSION_VERSIONS | 0 |
WEBSITE_RUN_FROM_PACKAGE
Memungkinkan aplikasi fungsi Anda berjalan dari file paket, yang dapat dipasang atau disebarkan secara lokal ke URL eksternal.
Tombol | Sampel nilai |
---|---|
WEBSITE_RUN_FROM_PACKAGE | 1 |
Nilai yang valid adalah URL yang diselesaikan ke lokasi file paket penyebaran eksternal, atau 1
. Ketika diatur ke 1
, paket harus berada di folder d:\home\data\SitePackages
. Saat Anda menggunakan penyebaran zip dengan WEBSITE_RUN_FROM_PACKAGE
diaktifkan, paket secara otomatis diunggah ke lokasi ini. Dalam pratinjau, pengaturan ini diberi nama WEBSITE_RUN_FROM_ZIP
. Untuk informasi selengkapnya, lihat Menjalankan fungsi Anda dari file paket penerapan.
Saat menyebarkan dari URL paket eksternal, Anda juga harus menyinkronkan pemicu secara manual. Untuk informasi selengkapnya, lihat Sinkronisasi pemicu.
WEBSITE_SKIP_CONTENTSHARE_VALIDATION
Pengaturan WEBSITE_CONTENTAZUREFILECONNECTIONSTRING dan WEBSITE_CONTENTSHARE memiliki pemeriksaan validasi tambahan untuk memastikan bahwa aplikasi dapat dimulai dengan benar. Pembuatan pengaturan aplikasi gagal ketika aplikasi fungsi tidak dapat memanggil Akun Penyimpanan hilir atau Key Vault dengan benar karena kendala jaringan atau faktor pembatas lainnya. Ketika WEBSITE_SKIP_CONTENTSHARE_VALIDATION diatur ke 1
, pemeriksaan validasi dilewati; jika tidak, nilai default ke 0
dan validasi terjadi.
Tombol | Sampel nilai |
---|---|
WEBSITE_SKIP_CONTENTSHARE_VALIDATION | 1 |
Jika validasi dilewati dan berbagi string koneksi atau konten tidak valid, aplikasi tidak akan dapat memulai dengan benar. Dalam hal ini, fungsi mengembalikan kesalahan HTTP 500. Untuk informasi selengkapnya, lihat Memecahkan masalah kesalahan: "Runtime Azure Functions tidak dapat dijangkau"
WEBSITE_SLOT_NAME
Baca-saja. Nama slot penyebaran saat ini. Nama slot produksi adalah Production
.
Tombol | Sampel nilai |
---|---|
WEBSITE_SLOT_NAME | Production |
WEBSITE_TIME_ZONE
Memungkinkan Anda mengatur zona waktu untuk aplikasi fungsi Anda.
Tombol | OS | Sampel nilai |
---|---|---|
WEBSITE_TIME_ZONE | Windows | Eastern Standard Time |
WEBSITE_TIME_ZONE | Linux | America/New_York |
Zona waktu yang digunakan dengan ekspresi CRON adalah Waktu Universal Terkoordinasi (UTC). Agar ekspresi CRON Anda berjalan berdasarkan zona waktu lain, buat setelan aplikasi untuk aplikasi fungsi Anda yang bernama WEBSITE_TIME_ZONE
.
Nilai pengaturan ini bergantung pada sistem operasi dan rencana tempat aplikasi fungsi Anda berjalan.
Sistem operasi | Paket | Nilai |
---|---|---|
Windows | Semua | Atur nilai ke nama zona waktu yang diinginkan seperti yang diberikan oleh baris kedua dari setiap pasangan yang diberikan oleh perintah Windows tzutil.exe /L |
Linux | Premium Khusus |
Atur nilai ke nama zona waktu yang diinginkan seperti yang ditunjukkan dalam tz database. |
Catatan
WEBSITE_TIME_ZONE
dan TZ
saat ini tidak didukung saat berjalan di Linux dalam paket Konsumsi. Dalam hal ini, mengatur WEBSITE_TIME_ZONE
atau TZ
dapat membuat masalah terkait SSL dan menyebabkan metrik berhenti berfungsi untuk aplikasi Anda.
Misalnya, Waktu Timur di AS (diwakili oleh Eastern Standard Time
(Windows) atau America/New_York
(Linux)) saat ini menggunakan UTC-05:00 selama waktu standar dan UTC-04:00 selama siang hari. Untuk memiliki fire pemicu timer pada pukul 10.00 Waktu Timur setiap hari, buat pengaturan aplikasi untuk aplikasi fungsi Anda bernama WEBSITE_TIME_ZONE
, atur nilai ke Eastern Standard Time
(Windows) atau America/New_York
(Linux), lalu gunakan ekspresi NCRONTAB berikut:
"0 0 10 * * *"
Saat Anda menggunakan WEBSITE_TIME_ZONE
waktu disesuaikan untuk perubahan waktu dalam zona waktu tertentu, termasuk waktu musim panas dan perubahan waktu standar.
WEBSITE_USE_PLACEHOLDER
Menunjukkan apakah akan menggunakan pengoptimalan cold start tertentu saat berjalan pada paket Konsumsi. Atur ke 0
untuk menonaktifkan pengoptimalan cold-start pada paket Konsumsi.
Tombol | Sampel nilai |
---|---|
WEBSITE_USE_PLACEHOLDER | 1 |
WEBSITE_USE_PLACEHOLDER_DOTNETISOLATED
Menunjukkan apakah akan menggunakan pengoptimalan cold start tertentu saat menjalankan fungsi proses pekerja terisolasi .NET pada paket Konsumsi. Atur ke 0
untuk menonaktifkan pengoptimalan cold-start pada paket Konsumsi.
Tombol | Sampel nilai |
---|---|
WEBSITE_USE_PLACEHOLDER_DOTNETISOLATED | 1 |
WEBSITE_VNET_ROUTE_ALL
Penting
WEBSITE_VNET_ROUTE_ALL adalah pengaturan aplikasi warisan yang telah digantikan oleh pengaturan situs vnetRouteAllEnabled .
Menunjukkan apakah semua lalu lintas keluar dari aplikasi dirutekan melalui jaringan virtual. Nilai 1
pengaturan menunjukkan bahwa semua lalu lintas aplikasi dirutekan melalui jaringan virtual. Anda akan memerlukan pengaturan ini saat mengonfigurasi integrasi jaringan virtual Regional dalam paket hosting Elastic Premium dan Dedicated. Ini juga digunakan ketika jaringan virtual NAT gateway digunakan untuk menentukan alamat IP keluar statis.
Tombol | Sampel nilai |
---|---|
WEBSITE_VNET_ROUTE_ALL | 1 |
WEBSITES_ENABLE_APP_SERVICE_STORAGE
Menunjukkan apakah /home
direktori dibagikan di seluruh instans berskala, dengan nilai true
default . Anda harus mengatur ini ke false
saat menyebarkan aplikasi fungsi Anda dalam kontainer.
Pengaturan situs App Service
Beberapa konfigurasi harus dipertahankan di tingkat App Service sebagai pengaturan situs, seperti versi bahasa. Pengaturan ini dikelola di portal, dengan menggunakan REST API, atau dengan menggunakan Azure CLI atau Azure PowerShell. Berikut ini adalah pengaturan situs yang mungkin diperlukan, tergantung pada bahasa, OS, dan versi runtime Anda:
alwaysOn
Pada aplikasi fungsi yang berjalan dalam paket Khusus (App Service), runtime Functions tidak aktif setelah beberapa menit tidak aktif, yang mengarahkan hanya permintaan ke pemicu HTTP membangunkan aplikasi fungsi Anda. Untuk memastikan bahwa fungsi yang dipicu non-HTTP Anda berjalan dengan benar, termasuk fungsi pemicu Timer, aktifkan Always On untuk aplikasi fungsi dengan mengatur alwaysOn
pengaturan situs ke nilai true
.
functionsRuntimeAdminIsolationEnabled
Menentukan apakah titik akhir administrator bawaan (/admin
) di aplikasi fungsi Anda dapat diakses. Saat diatur ke false
(default), aplikasi memungkinkan permintaan ke titik akhir saat /admin
permintaan tersebut menyajikan kunci master dalam permintaan. Ketika true
, /admin
titik akhir tidak dapat diakses, bahkan dengan kunci master.
Properti ini tidak dapat diatur untuk aplikasi yang berjalan di Linux Consumption SKU, dan tidak dapat diatur untuk aplikasi yang berjalan pada Azure Functions versi 1.x. Jika Anda menggunakan versi 1.x, Anda harus terlebih dahulu bermigrasi ke versi 4.x.
linuxFxVersion
Untuk aplikasi fungsi yang berjalan di Linux, linuxFxVersion
menunjukkan bahasa dan versi untuk proses pekerja khusus bahasa. Informasi ini digunakan, bersama dengan FUNCTIONS_EXTENSION_VERSION
, untuk menentukan gambar kontainer Linux tertentu mana yang diinstal untuk menjalankan aplikasi fungsi Anda. Pengaturan ini dapat diatur ke nilai yang telah ditentukan sebelumnya atau URI gambar kustom.
Nilai ini diatur untuk Anda saat Membuat aplikasi fungsi Linux. Anda mungkin perlu mengaturnya untuk templat ARM dan penyebaran Bicep dan dalam skenario peningkatan tertentu.
Nilai linuxFxVersion yang valid
Anda bisa menggunakan perintah Azure CLI berikut untuk melihat tabel nilai saat ini linuxFxVersion
, dengan versi runtime Functions yang didukung:
az functionapp list-runtimes --os linux --query "[].{stack:join(' ', [runtime, version]), LinuxFxVersion:linux_fx_version, SupportedFunctionsVersions:to_string(supported_functions_versions[])}" --output table
Perintah sebelumnya mengharuskan Anda untuk meningkatkan ke versi 2.40 dari Azure CLI.
Gambar kustom
Saat Anda membuat dan memelihara kontainer linux kustom Anda sendiri untuk aplikasi fungsi Anda, linuxFxVersion
nilainya adalah dalam format DOCKER|<IMAGE_URI>
, seperti dalam contoh berikut:
linuxFxVersion = "DOCKER|contoso.com/azurefunctionsimage:v1.0.0"
Ini menunjukkan sumber registri kontainer yang disebarkan. Untuk informasi selengkapnya, lihat Bekerja dengan kontainer dan Azure Functions.
Penting
Saat membuat kontainer Anda sendiri, Anda diharuskan untuk menjaga gambar dasar kontainer Anda diperbarui ke gambar dasar terbaru yang didukung. Gambar dasar yang didukung untuk Azure Functions khusus bahasa dan ditemukan di repositori gambar dasar Azure Functions.
Tim Functions berkomitmen untuk menerbitkan pembaruan bulanan untuk gambar dasar ini. Pembaruan reguler mencakup pembaruan versi minor terbaru dan perbaikan keamanan untuk runtime Functions dan bahasa. Anda harus memperbarui kontainer Anda secara teratur dari gambar dasar terbaru dan menyebarkan ulang versi kontainer Anda yang diperbarui.
netFrameworkVersion
Mengatur versi spesifik .NET untuk fungsi C#. Untuk informasi selengkapnya, lihat Memperbarui aplikasi fungsi Anda di Azure.
powerShellVersion
Mengatur versi PowerShell tertentu tempat fungsi Anda berjalan. Untuk informasi selengkapnya, lihat Mengubah versi PowerShell.
Saat berjalan secara lokal, Anda menggunakan FUNCTIONS_WORKER_RUNTIME_VERSION
pengaturan dalam file local.settings.json.
vnetContentShareEnabled
Aplikasi yang berjalan dalam paket Premium menggunakan berbagi file untuk menyimpan konten. Nama berbagi konten ini disimpan dalam WEBSITE_CONTENTSHARE
pengaturan aplikasi dan string koneksi disimpan di WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
. Untuk merutekan lalu lintas antara aplikasi fungsi dan berbagi konten melalui jaringan virtual, Anda juga harus mengatur vnetContentShareEnabled
ke true
. Mengaktifkan properti situs ini adalah persyaratan saat membatasi akun penyimpanan Anda ke jaringan virtual dalam paket hosting Elastic Premium dan Dedicated.
Catatan
Anda harus berhati-hati saat merutekan ke berbagi konten di akun penyimpanan yang dibagikan oleh beberapa aplikasi fungsi dalam paket yang sama. Untuk informasi selengkapnya, lihat Perutean yang konsisten melalui jaringan virtual di artikel Pertimbangan penyimpanan.
Properti situs ini menggantikan pengaturan warisan WEBSITE_CONTENTOVERVNET
.
vnetImagePullEnabled
Functions mendukung aplikasi fungsi yang berjalan di kontainer Linux. Untuk menyambungkan dan menarik dari registri kontainer di dalam jaringan virtual, Anda harus mengatur vnetImagePullEnabled
ke true
. Properti situs ini didukung dalam paket hosting Elastic Premium dan Dedicated. Paket Konsumsi Flex tidak bergantung pada properti situs atau pengaturan aplikasi untuk mengonfigurasi Jaringan. Untuk informasi selengkapnya, lihat Penghentian paket Konsumsi Flex.
vnetRouteAllEnabled
Menunjukkan apakah semua lalu lintas keluar dari aplikasi dirutekan melalui jaringan virtual. Nilai true
pengaturan menunjukkan bahwa semua lalu lintas aplikasi dirutekan melalui jaringan virtual. Gunakan pengaturan ini saat mengonfigurasi integrasi jaringan virtual Regional dalam paket Elastic Premium dan Dedicated. Ini juga digunakan ketika jaringan virtual NAT gateway digunakan untuk menentukan alamat IP keluar statis. Untuk informasi selengkapnya, lihat Mengonfigurasi perutean aplikasi.
Pengaturan situs ini menggantikan pengaturan WEBSITE_VNET_ROUTE_ALL warisan.
Penghentian paket Konsumsi Flex
Dalam paket Konsumsi Flex, properti situs dan pengaturan aplikasi ini tidak digunakan lagi dan tidak boleh digunakan saat membuat sumber daya aplikasi fungsi:
Pengaturan/properti | Alasan |
---|---|
ENABLE_ORYX_BUILD |
Digantikan oleh remoteBuild parameter saat menyebarkan dalam Konsumsi Flex |
FUNCTIONS_EXTENSION_VERSION |
Pengaturan Aplikasi diatur oleh backend. Nilai ~1 dapat diabaikan. |
FUNCTIONS_WORKER_RUNTIME |
Digantikan oleh name dalam properties.functionAppConfig.runtime |
FUNCTIONS_WORKER_RUNTIME_VERSION |
Digantikan oleh version dalam properties.functionAppConfig.runtime |
FUNCTIONS_MAX_HTTP_CONCURRENCY |
Digantikan oleh bagian pemicu skala dan konkurensi |
FUNCTIONS_WORKER_PROCESS_COUNT |
Pengaturan tidak valid |
FUNCTIONS_WORKER_DYNAMIC_CONCURRENCY_ENABLED |
Pengaturan tidak valid |
SCM_DO_BUILD_DURING_DEPLOYMENT |
Digantikan oleh remoteBuild parameter saat menyebarkan dalam Konsumsi Flex |
WEBSITE_CONTENTAZUREFILECONNECTIONSTRING |
Digantikan oleh bagian penyebaran functionAppConfig |
WEBSITE_CONTENTOVERVNET |
Tidak digunakan untuk jaringan dalam Konsumsi Flex |
WEBSITE_CONTENTSHARE |
Digantikan oleh bagian penyebaran functionAppConfig |
WEBSITE_DNS_SERVER |
DNS diwarisi dari VNet terintegrasi di Flex |
WEBSITE_NODE_DEFAULT_VERSION |
Digantikan oleh version dalam properties.functionAppConfig.runtime |
WEBSITE_RUN_FROM_PACKAGE |
Tidak digunakan untuk penyebaran dalam Konsumsi Flex |
WEBSITE_SKIP_CONTENTSHARE_VALIDATION |
Berbagi konten tidak digunakan dalam Konsumsi Flex |
WEBSITE_VNET_ROUTE_ALL |
Tidak digunakan untuk jaringan dalam Konsumsi Flex |
properties.alwaysOn |
Tidak valid |
properties.containerSize |
Diganti namanya menjadi instanceMemoryMB |
properties.ftpsState |
FTPS tidak didukung |
properties.isReserved |
Tidak valid |
properties.IsXenon |
Tidak valid |
properties.javaVersion |
Digantikan oleh version dalam properties.functionAppConfig.runtime |
properties.LinuxFxVersion |
Digantikan oleh properties.functionAppConfig.runtime |
properties.netFrameworkVersion |
Digantikan oleh version dalam properties.functionAppConfig.runtime |
properties.powerShellVersion |
Digantikan oleh version dalam properties.functionAppConfig.runtime |
properties.siteConfig.functionAppScaleLimit |
Diganti namanya menjadi maximumInstanceCount |
properties.siteConfig.preWarmedInstanceCount |
Diganti namanya menjadi alwaysReadyInstances |
properties.use32BitWorkerProcess |
32-bit tidak didukung |
properties.vnetBackupRestoreEnabled |
Tidak digunakan untuk jaringan dalam Konsumsi Flex |
properties.vnetContentShareEnabled |
Tidak digunakan untuk jaringan dalam Konsumsi Flex |
properties.vnetImagePullEnabled |
Tidak digunakan untuk jaringan dalam Konsumsi Flex |
properties.vnetRouteAllEnabled |
Tidak digunakan untuk jaringan dalam Konsumsi Flex |
properties.windowsFxVersion |
Tidak valid |
Langkah berikutnya
Pelajari cara memperbarui pengaturan aplikasi