如何保持 blobs_extension 应用程序密钥持久,以便每次重新启动或重新部署函数或更改任何函数或 blob 存储帐户设置时都不必更新 Webhook 事件订阅端点?根据此链接中描述的工作流程,我正在处理的 Azure 函数中的应用程序密钥不断变化,导致该函数停止处理数据。谢谢!
这主要发生在功能停止并重新启动时。对于重新部署,它基本上保持不变,所以我看到函数正在运行
@FunctionName("BlobFunction")
public void run(@BlobTrigger(name = "content", path = "%MY_PATH%", dataType = "string", connection = "StorageString", source = "EventGrid") String content,
@BindingName("name") String name,
@KafkaOutput(name = "kafkaOutput", topic = "%TOPIC%", brokerList = "%BROKER_LIST%",
username = "$ConnectionString",
password = "EventHubConnection",
authenticationMode = BrokerAuthenticationMode.PLAIN,
protocol = BrokerProtocol.SASLSSL) OutputBinding<KafkaEntity> output,
final ExecutionContext context) {
final KafkaEntity kafkaMessage = new KafkaEntity(0, 0, System.getenv("TOPIC"),
Instant.now().toString(), content, customer, new KafkaHeaders[]{new KafkaHeaders("name", name)});
output.setValue(kafkaMessage);
}
默认情况下,系统密钥通过 AzureWebJobsStorage 连接保留。如果发生某些变化,导致系统不再看到可用的值,它将使用可用的任何存储来创建一个新的值。但是,如果该特定连接没有任何变化,那么我们预计系统密钥不会发生无提示的轮换。特别是,显式停止/重新启动本身预计不会对系统状态进行任何更改。
你能解释一下这是什么意思吗? “更改任何函数或 Blob 存储帐户设置”