Добавлен BLOB-объект приложения Azure logic или изменен триггер - PullRequest
0 голосов
/ 02 июля 2018

У меня есть Raspberry Pi, который отправляет сообщения в Azure iot Hub и сохраняет их в контейнере. Теперь проблема в том, что внутри моего контейнера BLOB-объектов есть следующая структура папок: 'name of iot hub' / 01 / year / month / day / random number? / Blobfiles Я не знаю, откуда эта структура. Кажется, он генерируется автоматически. Внутри BLOB-объектов находятся мои сообщения, но это нормально, но структура папок странная. Есть ли способ удалить все эти ненужные папки? Их удаление не поможет, потому что со следующим сообщением они просто возвращаются.

В любом случае я хотел создать логическую функцию с триггером, когда большой объект был изменен или добавлен, и выбрал правильный контейнер хранения, но триггер никогда не активируется. Почему это так ? Например, http-запрос работает. Но спусковой механизм капли не.

Привет, Julian

1 Ответ

0 голосов
/ 03 июля 2018

Сначала проверьте свою учетную запись хранения и убедитесь, что это учетная запись общего назначения, а не учетная запись хранения только BLOB-объектов. Поскольку

Поддерживаются учетные записи только для BLOB-объектов для ввода и вывода BLOB-объектов. привязки, но не для триггеров BLOB-объектов. Для запуска хранилища BLOB-объектов требуется учетная запись общего назначения.

Ссылка: Привязки хранилища BLOB-объектов Azure для функций Azure

Я показываю мои настройки здесь в качестве справки, чтобы вы могли проверить свои.

Моя учетная запись хранения общего назначения v1. Вы можете проверить свои данные в разделе Обзор учетной записи хранения-> Тип учетной записи.

Мое имя контейнера BLOB-объектов - "blobcontainer", а мой function.json -

{
  "bindings": [
    {
      "name": "myBlob",
      "type": "blobTrigger",
      "direction": "in",
      "path": "blobcontainer/{name}",
      "connection": "AzureWebJobsDashboard"
    }
  ],
  "disabled": false
}

Здесь вам нужно проверить «AzureWebJobsDashboard», чтобы увидеть, имеет ли правильное имя учетной записи хранения и ввести параметры приложения функции, например так:

enter image description here

Мой run.csx

public static void Run([BlobTrigger("blobcontainer/{name}")] Stream myBlob, string name, TraceWriter log)
{
    log.Info($"C# Blob trigger function Processed blob\n Name:{name} \n Size: {myBlob.Length} Bytes");
}

Запустите функцию после создания файла BLOB-объекта. Появится следующий журнал:

enter image description here

Что касается структуры папок, она определяется конечной точкой хранилища, созданной в концентраторе IoT Azure, следующим образом:

enter image description here

По порядку, это ваше имя, раздел, дата и время вашего IoT-хаба.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...