У меня есть код ниже, чтобы перехватить все сообщения, поступившие на IoT Hub
[FunctionName("device-message--funcapp-v2")]
public static void Run([IoTHubTrigger("testhub",
Connection = "IoTHubEventEndPoint",
ConsumerGroup = "ActualConsumerGroup")]EventData message,
ILogger log)
{
log.LogInformation($"C# IoT Hub trigger:
{Encoding.UTF8.GetString(message.Body.Array)}");
}
Это работает нормально, как и ожидалось, но теперь я не хочу жестко кодировать ConsumerGroup
. Поэтому я добавил ниже запись конфигурации в local.settings.json
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"EventHub": "",
"CosmosDb": "",
"ConfigurationConsumerGroup": "ActualConsumerGroup"
}
}
и измененный код, как показано ниже
[FunctionName("device-message--funcapp-v2")]
public static void Run([IoTHubTrigger("testhub",
Connection = "IoTHubEventEndPoint",
ConsumerGroup = "ConfigurationConsumerGroup")]EventData message,
ILogger log)
Но это не удалось.
[18.01.2009 9:47:11 AM] Microsoft.Azure.EventHubs: объект обмена сообщениями 'iothub-ns-testhub-945897-3a6f492cc4: eventhub: lctesthub ~ 8191 | ConfigurationConsumerGroup' не найден.