通过Powershell定义Azure Stream Analytics iot-hub输入源

时间:2017-06-01 19:20:06

标签: json powershell azure azure-stream-analytics azure-iot-hub

我正在尝试编写一个powershell脚本,在我的azure门户帐户中创建一个新的streamAnalytics作业,输入源为iot-hub,输出源为blob存储帐户。

为此,我正在使用AzureRM命令 new-streamAnalyticsJob,和json文件。

我的问题是:我没有看到json文件的任何文档或示例,其中输入源是iot-hub。只有event-hub。

我需要在json文件中提供哪些参数?任何人都可以显示json文件的示例,输入源为streamAnalytics作为 Iot-hub

3 个答案:

答案 0 :(得分:1)

我最终得到了答案:我必须添加到Oliver之前发布的输入中的必填字段是:
"端点":"消息/事件" 我在Datasource Properties部分添加了它,它工作正常!

谢谢奥利弗

答案 1 :(得分:1)

要返回您看到的错误消息,要添加到Olivier的示例,您需要一个名为endpoint的Property,它对应于IoT Hub中的端点。如果您正在寻找遥测信息,这将是: “端点”:“消息/事件” 这可以在Azure ARM的架构中找到:https://github.com/Azure/azure-rest-api-specs/blob/current/specification/streamanalytics/resource-manager/Microsoft.StreamAnalytics/2016-03-01/examples/Input_Create_Stream_IoTHub_Avro.json

所以要完成Olivier的例子,当使用API​​版本''时:

 "Inputs": [
                {
                    "Name": "Hub",
                    "Properties": {
                        "DataSource": {
                            "Properties": {
                                "consumerGroupName": "[variables('asaConsumerGroup')]",
                                "iotHubNamespace": "[parameters('iotHubName')]",
                                "sharedAccessPolicyKey": "[listkeys(variables('iotHubKeyResource'), variables('iotHubVersion')).primaryKey]",
                                "sharedAccessPolicyName": "[variables('iotHubKeyName')]",
                                "endpoint": "messages/events"
                            },
                            "Type": "Microsoft.Devices/IotHubs"
                        },
                        "Serialization": {
                            "Properties": {
                                "Encoding": "UTF8"
                            },
                            "Type": "Json"
                        },
                        "Type": "Stream"
                    }
                }
            ],

答案 2 :(得分:0)

对于ASA资源的输入部分,它看起来如下所示:

"Inputs": [ { "Name": "IoTHubStream", "Properties": { "DataSource": { "Properties": { "consumerGroupName": "[variables('CGName')]", "iotHubNamespace": "[variables('iotHubName')]", "sharedAccessPolicyKey": "[listkeys(variables('iotHubKeyResource'), variables('iotHubVersion')).primaryKey]", "sharedAccessPolicyName": "[variables('iotHubKeyName')]" }, "Type": "Microsoft.Devices/IotHubs" }, "Serialization": { "Properties": { "Encoding": "UTF8" }, "Type": "Json" }, "Type": "Stream" } } ]