blobtrigger не работает при публикации в функциях Azure, но он работает в локальной среде

Моя функция Azure не запускается после загрузки моего файла в соответствующий контейнер учетной записи хранения, но она работает нормально, когда я тестирую свой локальный компьютер со следующими настройками.

Мне пришлось использовать local.setting.json, как показано ниже

"Values": {
....
"AzureWebJobsStorage" : "UseDevelopmentStorage=true",
"AzureStorageMyUpload" : "<<My storage account access key, 
which is get copy from my container>>"
.....
}

В реальном времени значение «AzureWebJobsStorage» - это еще одна информация об учетной записи хранения.

"AzureStorageMyUpload" : "DefaultEndpointsProtocol=https;AccountName=<<ACCOUNT_NAME>>;AccountKey=<<ACCOUNT_KEY>>;EndpointSuffix=core.windows.net"

а также

"AzureStorageMyUpload" : "DefaultEndpointsProtocol=https;AccountName=<<ACCOUNT_NAME>>;AccountKey=<<ACCOUNT_KEY>>;BlobEndpoint=https://<<ACCOUNT_NAME>>.blob.core.windows.net/;TableEndpoint=https://<<ACCOUNT_NAME>>.table.core.windows.net/;QueueEndpoint=https://<<ACCOUNT_NAME>>.queue.core.windows.net/;FileEndpoint=https://<<ACCOUNT_NAME>>.file.core.windows.net/"

Моя лазурная функция ниже

[FunctionName("UploadCSV")]
public static async Task Run([BlobTrigger("<<containerName>>/<<folderName>>/{name}.csv", 
Connection = "AzureStorageMyUpload")]
            Stream stream, string name, ILogger log){
              log.LogInformation("UploadCSV starts");
    }

Функция

Версия выполнения: 1.0.12922.0 (~ 1)

Когда мне был создан новый триггер большого двоичного объекта из самого лазурного портала, он у меня работал нормально. тот же не работает, когда я создаю локально с помощью кода Visual Studio 2019 на лазурном портале, это похоже на "function.json".


person Rajamohan Anguchamy    schedule 08.01.2020    source источник
comment
Вы установили значение AzureStorageMyUpload в настройках приложения?   -  person George Chen    schedule 08.01.2020
comment
да, мне добавлена ​​информация о моей учетной записи хранения, например DefaultEndpointsProtocol = https; AccountName = ‹< имя учетной записи ››; AccountKey = ‹< ключ доступа ››; EndpointSuffix = core.windows.net   -  person Rajamohan Anguchamy    schedule 08.01.2020
comment
а также я пробовал, например, DefaultEndpointsProtocol = https; AccountName = ‹‹accountName››; AccountKey = ‹‹accountKey››; BlobEndpoint = https: // ‹‹accountName›› .blob.core.windows.net /; TableEndpoint = https: // ‹‹accountName›› .table.core.windows.net /; QueueEndpoint = https: // ‹‹accountName›› .queue.core.windows.net /; FileEndpoint = https: // ‹‹accountName››. file.core.windows.net/   -  person Rajamohan Anguchamy    schedule 08.01.2020
comment
Была ли у вас AzureWebJobsStorage настройка и отображалась ли ошибка на лазурном портале?   -  person George Chen    schedule 08.01.2020
comment
Я использую AzureWebJobsStorage: UseDevelopmentStorage = true только для моей цели тестирования, а не для реального времени.   -  person Rajamohan Anguchamy    schedule 08.01.2020
comment
Значение AzureWebJobsStorage в реальном времени - это еще одна информация об учетной записи хранения.   -  person Rajamohan Anguchamy    schedule 08.01.2020
comment
Как вы размещаете свою функцию; на плане потребления, плане обслуживания приложений или премиум-плане? Если вы используете тарифный план службы приложений, включен ли Always On? Как долго ваша функция была развернута до того, как вы загрузили большой двоичный объект? Как долго вы ждали, пока триггер запустит вашу функцию? У меня много вопросов: p Вы можете изучить использование сетки событий если триггеры не делают то, что вам нужно.   -  person rickvdbosch    schedule 08.01.2020
comment
@rickvdbosch, с помощью лазурной трубы CICD. это учетная запись компании, я не знаю, какой это план, но когда выпуск был завершен, он автоматически обновлялся. это занимает от 5 до 10 минут вместе со всеми другими сервисами и пользовательским интерфейсом. Я пытаюсь загрузить файл через rest API, а также пытался использовать прямую загрузку blob.   -  person Rajamohan Anguchamy    schedule 08.01.2020
comment
спасибо, ребята, ваше предложение, спасибо   -  person Rajamohan Anguchamy    schedule 09.01.2020
comment
Опять же, у меня такая же проблема, может ли кто-нибудь мне помочь. это слишком головная боль, чтобы ее разрешить. Я хотя триггер blob связан с некоторой конфигурацией в учетной записи хранения   -  person Rajamohan Anguchamy    schedule 20.01.2020
comment
@RajamohanAnguchamy, это функция v1 или v2? а можете ли вы прикрепить снимок экрана с настройками приложения функции на лазурном портале?   -  person Ivan Yang    schedule 20.01.2020
comment
Я уже добавил информацию Версия выполнения: 1.0.12922.0 (~ 1)   -  person Rajamohan Anguchamy    schedule 20.01.2020


Ответы (1)


Теперь это работает, я просто удалил имя строки подключения и воспроизвел его на

"AzureWebJobsStorage": "<<live storage account details>>"


[FunctionName("UploadCSV")]
public static async Task Run([BlobTrigger("<<containerName>>/<<folderName>>/{name}.csv", 
Connection = "AzureWebJobsStorage")]
            Stream stream, string name, ILogger log){
              log.LogInformation("UploadCSV starts");
    }
person Rajamohan Anguchamy    schedule 09.01.2020