Моя функция Azure не обновляется при ее развертывании - PullRequest
0 голосов
/ 02 июля 2018

Я написал функцию «Запуск по очереди», но серьезно думаю, что она не работает, даже если я не получаю никакой ошибки. Я объясняю контекст, в котором я работаю и что я сделал.

У меня есть очередь ... по какой-то причине мне приходится вставлять в очередь около 200 сообщений за раз. Итак, моя функция будет работать около 200 раз почти сразу. Основным методом функции является статический. Мне это не нравится ... Итак, я создал класс, и вся логика функции там есть:

public static async Task Run([QueueTrigger(Program.CONST_QUEUENAME)]string queueItem, TraceWriter log)
{
    try
    {
        log.Info($"Start: {queueItem}");

        await new MyFunction(log).ExecuteAsync(queueItem);

        log.Info($"End");
    }
    catch (Exception ex)
    {
        log.Error($"Errore: {ex.Message}");

        throw ex;
    }
}

В методе ExecuteAsync моего MyFunction класса я делаю следующий шаг:

  • десериализация сообщения
  • Выполнение некоторой проверки между десериализованным элементом и некоторыми данными, хранящимися в db
  • если проверка в порядке, вызов API. API, обновите еще один дБ
  • После вызова API я выполняю response.EnsureSuccessStatusCode();, чтобы убедиться, что вызов был в порядке.

Результат выполнения функции НИЧЕГО! Ничего не обновляется в базе данных. Хорошо, я делаю некоторую проверку, чтобы решить, нужно ли мне обновлять базу данных или нет ... но я ожидаю, что произойдет хотя бы одно обновление.

Итак, я обновил функцию, добавив много сообщений в журнал (я веду журнал, используя понимание приложения) и обнаружил:

  • в очереди записано около 200 сообщений (поэтому проблема не в записи очереди)
  • функция выполняется корректно около 200 раз
  • Я вижу аномалию ... как будто я запускаю старую версию функции. Я не вижу все новые сообщения журнала. Очевидно, я развернул новую версию функции.

Так что не так?

Я просто сомневаюсь в публикации ... после развертывания на Azure (через VS) я получаю это сообщение:

Версия функций на вашем хосте Azure не соответствует локальной версия. Настройка приложения для FUNCTIONS_EXTENSION_VERSION должно быть обновлено до "~ 1". Обновите параметры приложения Azure, чтобы они соответствовали версия локальных функций? --------------------------- ДА НЕТ

Есть идеи?

Спасибо

...