Строка подключения, совместимая с концентратором событий Azure Iothub

Я пытаюсь получить строку подключения, совместимую с концентратором событий, в шаблоне ARM, а затем передать ее в свой кластер HDInsight для дальнейшей обработки.

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

Мне нужен список и передача строки подключения концентратора событий в действие сценария HDInsight в шаблоне.

В части конечной точки ресурса iothub я настраиваю строку подключения, совместимую с концентратором событий.

"resources": [
        {            
            "type": "Microsoft.Devices/IotHubs",
            "sku": {
                "name": "S1",
                "tier": "Standard",
                "capacity": 1
            },
            "name": "[variables('IotHub')]",
            "apiVersion": "2016-02-03",
            "location": "southeastasia",
            "tags": {},
            "properties": {
                "ipFilterRules": [],
                "eventHubEndpoints": {
                    "events": {
                        "retentionTimeInDays": 4,
                        "partitionCount": 4,
                        "partitionIds": [
                            "0",
                            "1",
                            "2",
                            "3"
                        ],
                        "path": "[variables('IotHub')]",
                        "endpoint": "[concat('sb://', variables('IotHub'),'.servicebus.windows.net/')]"
                    }                 
                },
                "storageEndpoints": {
                    "$default": {
                        "sasTtlAsIso8601": "PT1H",
                        "connectionString": "",
                        "containerName": ""
                    }
                },
                "enableFileUploadNotifications": false,
                "cloudToDevice": {
                    "maxDeliveryCount": 10,
                    "defaultTtlAsIso8601": "PT1H",
                    "feedback": {
                        "lockDurationAsIso8601": "PT1M",
                        "ttlAsIso8601": "PT1H",
                        "maxDeliveryCount": 10
                    }
                },
                "operationsMonitoringProperties": {
                    "events": {
                        "None": "None",
                        "Connections": "None",
                        "DeviceTelemetry": "None",
                        "C2DCommands": "None",
                        "DeviceIdentityOperations": "None",
                        "FileUploadOperations": "None"
                    }
                },
                "features": "None"
            },
            "resources": [],
            "dependsOn": []
        }
    ],

person Gajinder Singh    schedule 24.10.2016    source источник
comment
Добро пожаловать в Stack Overflow! Вы можете прочитать, как Как задать вопрос и создать минимальный воспроизводимый пример. Так нам будет проще вам помочь.   -  person Katie    schedule 24.10.2016
comment
Центр Интернета вещей и Центр событий - это две разные службы Azure. Непонятно, о чем вы спрашиваете.   -  person CSharpRocks    schedule 24.10.2016
comment
Центр Интернета вещей Azure имеет строку подключения, совместимую с концентратором событий, доступную для использования с приложениями, работающими с подключением концентратора событий. струны. Я пытаюсь настроить созданную строку подключения концентратора событий в службе iothub.   -  person Gajinder Singh    schedule 25.10.2016
comment
Вы создали строку подключения в шаблоне ARM с типом JSON? Не могли бы вы показать строки кода для создания строки подключения в файле JSON?   -  person Rita Han    schedule 25.10.2016


Ответы (1)


Вы не можете установить значения для имени, совместимого с концентратором событий, или конечной точки, совместимой с концентратором событий, для Центра Интернета вещей, эти значения создаются при создании концентратора. Однако вы можете получить доступ к этим значениям в шаблоне ARM. Следующий фрагмент из раздела «выходы» шаблона, который создает центр Интернета вещей, иллюстрирует используемый синтаксис:

"outputs": {
  "eventHubCompatibleEndpoint": {
    "type": "string",
    "value": "[reference(resourceId('Microsoft.Devices/IoTHubs',parameters('hubName'))).eventHubEndpoints.events.endpoint]"
  },
  "eventHubCompatibleName": {
    "type": "string",
    "value": "[reference(resourceId('Microsoft.Devices/IoTHubs',parameters('hubName'))).eventHubEndpoints.events.path]"
  }
}
person Dominic Betts    schedule 02.11.2016
comment
Итак, да, я понял эту часть, но теперь я застрял на том, что мое то, что будет аналогично имени политики в Azure iot hub. Я использую политику iothubowner. - person Gajinder Singh; 03.11.2016
comment
Строка подключения для конечной точки, совместимой с концентраторами событий, выглядит следующим образом: Endpoint = {youreventhubcompatibleendpoint}; EntityPath = {youreventhubcompatiblename}; SharedAccessKeyName = iothubowner; SharedAccessKey = {youriothubkey} Используйте любую определенную политику для концентратора Интернета вещей, но помните, что это конечная точка только для чтения. - person Dominic Betts; 04.11.2016
comment
Спасибо за помощь Доминик - person Gajinder Singh; 04.11.2016
comment
Есть ли какая-либо документация, описывающая объект eventHubEndpoints и / или eventHubEndpoints.events? - person Vladislav; 23.10.2018