本文說明所有 Spring Cloud Azure 通用組態屬性。
每個 Azure 服務 SDK 的設定
大部分的 Azure 服務 SDK 可依傳輸類型分成兩個類別:HTTP 型或 AMQP 型。 所有 SDK 都有通用的屬性,例如驗證主體和 Azure 環境設定,或 HTTP 型用戶端通用的屬性,例如記錄層級來記錄 HTTP 要求和回應。 從 Spring Cloud Azure 4.0 開始,我們新增了您可以為每個 Azure 服務指定的五個常見組態屬性類別。
下表列出多個服務通用的屬性:
| 財產 | 描述 |
|---|---|
spring.cloud.azure.azure-service.client |
在一個 Azure 服務 SDK 底下設定傳輸用戶端。 |
spring.cloud.azure.azure-service.credential |
使用一個 Azure 服務 SDK 的 Microsoft Entra 識別符來設定驗證。 |
spring.cloud.azure.azure-service.profile |
設定一個 Azure 服務 SDK 的 Azure 雲端環境。 |
spring.cloud.azure.azure-service.proxy |
設定一個 Azure 服務 SDK 的 Proxy 選項。 |
spring.cloud.azure.azure-service.retry |
設定適用於一個 Azure 服務 SDK 的重試選項。 重試選項支援了部分 SDK,沒有 spring.cloud.azure.cosmos.retry. |
自 Spring Cloud Azure 4.0 以來,組態屬性前置詞已統一至 spring.cloud.azure 命名空間,讓設定屬性更一致且更直覺。 下表提供支援的 Azure 服務的前置詞快速檢閱:
| Azure 服務 | 組態屬性前置詞 | 組態屬性連結 |
|---|---|---|
| Azure 應用程式組態 | spring.cloud.azure.appconfiguration |
應用程式組態屬性 |
| Azure Cosmos DB | spring.cloud.azure.cosmos |
Azure Cosmos DB 組態屬性 |
| Azure 事件中樞 | spring.cloud.azure.eventhubs |
事件中樞組態屬性 |
| Azure Key Vault 憑證 | spring.cloud.azure.keyvault.certificate |
Key Vault 憑證組態屬性 |
| Azure Key Vault 秘密 | spring.cloud.azure.keyvault.secret |
Key Vault 秘密組態屬性 |
| Azure 服務匯流排 | spring.cloud.azure.servicebus |
服務總線組態屬性 |
| Azure 儲存體 Blob | spring.cloud.azure.storage.blob |
記憶體 Blob 組態屬性 |
| Azure 記憶體檔案共用 | spring.cloud.azure.storage.fileshare |
記憶體檔案共享組態屬性 |
| Azure 記憶體佇列 | spring.cloud.azure.storage.queue |
記憶體佇列組態屬性 |
Azure 服務 SDK 的全域設定
您可以在不同的 Azure 服務之間共用一些屬性,例如使用相同的服務主體來存取 Azure Cosmos DB 和 Azure 事件中樞。 Spring Cloud Azure 4.0 可讓您定義套用至命名空間中所有 Azure SDK 的屬性 spring.cloud.azure。
下表列出全域屬性:
| 財產 | 描述 |
|---|---|
spring.cloud.azure.client |
設定傳輸用戶端;預設會套用至所有 Azure SDK。 |
spring.cloud.azure.credential |
預設會設定所有 Azure SDK Microsoft Entra 識別碼的驗證。 |
spring.cloud.azure.profile |
預設會為所有 Azure SDK 設定 Azure 雲端環境。 |
spring.cloud.azure.proxy |
根據預設,設定適用於所有 Azure SDK 用戶端的 Proxy 選項。 |
spring.cloud.azure.retry |
根據預設,設定適用於所有 Azure SDK 用戶端的重試選項。 |
注意
在每個 Azure 服務下設定的屬性將會覆寫全域設定。
組態範例
Azure 服務 SDK 的全域重試組態
下列範例示範如何設定任何 HTTP 或 AMQP 通訊協定型 Azure SDK 用戶端的重試行為:
spring.cloud.azure:
retry:
mode: exponential
exponential:
max-retries: 4
base-delay: PT0.0801S
max-delay: PT9S
重試 Key Vault 屬性來源的組態
下列組態範例示範如何設定 Azure Key Vault 秘密用戶端的重試行為:
spring.cloud.azure:
keyvault:
secret:
property-source-enabled: true
property-sources:
- endpoint: <your-Azure-Key-Vault-endpoint>
retry:
mode: exponential
exponential:
max-retries: 4
base-delay: PT0.0801S
max-delay: PT9S