У меня есть функция Azure в Visual Studio:
[FunctionName("MyQueueProcessor")]
[StorageAccount("StorageConnectionString")]
public static async Task ProcessQueueMessage([QueueTrigger("my-queue")] string message, TextWriter log)
{
logInfo("Start processing message", LogLevel.TRACE, message, log);
}
У меня есть StorageConnectionString, установленный в настройках приложения в облаке, и когда я загружаю функцию из Visual Studio в приложение Azure, функция изначальноработает без проблем.
Проблема в том, что приложение-функция часто перезапускается, а иногда при перезапуске функция не запускается.Посмотрев на Application Insights, я получаю следующую ошибку:
Следующие 2 функции находятся в состоянии ошибки: ProcessQueueMessage: Microsoft.Azure.WebJobs.Host: Ошибка метода индексации 'MyQueueTrigger.ProcessQueueMessage'.Microsoft.Azure.WebJobs.Host: Строка подключения SDK 'StorageConnectionString' для Microsoft Azure WebJobs отсутствует или пуста.Строка подключения учетной записи хранения Microsoft Azure может быть задана следующими способами: 1. Установите строку подключения с именем «StorageConnectionString» в разделе connectionStrings файла .config в следующем формате или 2. Установите переменную среды с именем «StorageConnectionString»или 3. Установите соответствующее свойство JobHostConfiguration.Выполнить: Microsoft.Azure.WebJobs.Host: Ошибка индексации метода «MyTimerTrigger.Run».Microsoft.Azure.WebJobs.Host: Строка подключения SDK 'StorageConnectionString' для Microsoft Azure WebJobs отсутствует или пуста.Строка подключения учетной записи хранения Microsoft Azure может быть задана следующими способами: 1. Установите строку подключения с именем «StorageConnectionString» в разделе connectionStrings файла .config в следующем формате или 2. Установите переменную среды с именем «StorageConnectionString»или 3. Установите соответствующее свойство JobHostConfiguration.
Похоже, что иногда при перезапуске приложения функции происходит сбой привязки к StorageConnectionString.Как я могу предотвратить эту проблему?