Я разработал свое приложение функции Azure локально с помощью VScode и нажал его на облако azure, у меня есть функции eventhub-trigger, я использовал локальный код для локального кода в VScode, но теперь, когда я запускаю запуск func host start --debuge
, функции в моем приложении но ничего не было вызвано, я вижу, как они запускаются в облаке через свой журнал, это сводит меня с ума, почему они не запускаются локально, они включены, я несколько раз перезапускал свое функциональное приложение, но ничего не получил. Мое приложение - https://butterflyfnapp.azurewebsites.net
В дополнение к Михаилу другим вариантом является создание отдельной группы пользователей Event Hub для каждой среды, такой как облако и разработка /VS, и настройка их в настройках приложения или local.settings.json. Затем добавьте ConsumerGroup = "% consumergroup%" к аргументу EventHubTrigger в вашей функции, где группа потребления является примером имени переменной в настройках.
Помимо вышеперечисленных параметров, вы все же можете тестировать функцию запуска не-Http локально, используя запрос Http POST. Другими словами, ваша функция может быть проверена локально таким же образом, как это делается на портале. Подробнее здесь.
Ниже приведен пример проверки функции EventHubTrigger с использованием запроса Http POST:
url: http://localhost: 7071/admin/functions/MyFunction
Полезная нагрузка:
{
"input": '{"Id":1234,"Name":"abcd"}'
}
Информация о потребительской информации о событии (контрольные точки) хранится в хранилище Blob. Если вы совместно используете строку соединения для хранилища Blob между средами разработки/производства, они будут использовать одни и те же контрольные точки, поэтому они будут конкурировать друг с другом.
Я предполагаю, что развертывание облаков всегда обрабатывает события, обновляет контрольную точку до последней позиции, а затем локальное развертывание занимает эту контрольную точку и ничего не делает.
Чтобы этого не произошло, создайте дополнительное хранилище "dev" Blob и установите для него значение строки локального подключения.