На портале Azure вы можете увидеть «Параметры модуля IoT Edge»:
Как мне получить доступ к этому программно с C #?
Когда я получаю список модулей на пограничном устройстве, кажется, нет возможности получить настройки?
На портале Azure вы можете увидеть «Параметры модуля IoT Edge»:
Как мне получить доступ к этому программно с C #?
Когда я получаю список модулей на пограничном устройстве, кажется, нет возможности получить настройки?
Вы используете пакет SDK / пакет клиента для устройств Microsoft Azure и атакуете его следующим образом:
var registryManager = RegistryManager.CreateFromConnectionString(connString); //the connection string for your IOT Hub
var moduleTwins= new List<Twin>();
//var query = registryManager.CreateQuery($"SELECT * FROM devices", 100);
var query = registryManager.CreateQuery("SELECT * FROM devices.modules WHERE deviceId='MyEdgeDevice'",100);
while (query.HasMoreResults) {
var page = await query.GetNextAsTwinAsync();
moduleTwins.AddRange(page);
}
// this gets rid of all that version/metadata noise in a module/device twin
foreach (var module in moduleTwins) {
module.Properties.Reported.ClearMetadata();
module.Properties.Desired.ClearMetadata();
}
Теперь moduleTwins
является перечислимым списком объекта Twin (который является прямым представлением двойников модуль / устройство). Помимо забавы, там также будут близнецы $ edgeAgent и $ edgeHub, которые содержат все, а в списке modules
для edgeAgent вы увидите больше этой информации для каждого модуля ( изображение, параметры создания, политика перезапуска и т. д.), который находится в области properties.desired.modules
$ edgeAgent
"modules": {
"MyNeatModule": {
"type": "docker",
"settings": {
"image": "myAzureContainerRegistry.io/myneatmodule:amd64.debug",
"createOptions": "{}"
},
"status": "running",
"restartPolicy": "always",
"version": "1.0"
},
и все, что вы ищете, находится в properties.reported
области $ edgeAgent:
"modules": {
"SuperNeatAwesomeModule": {
"exitCode": 0,
"statusDescription": "running",
"lastStartTimeUtc": "2018-11-01T18:39:09.8814806Z",
"lastExitTimeUtc": "2018-11-01T18:05:40.8350456Z",
"restartCount": 0,
"lastRestartTimeUtc": "2018-11-01T18:05:40.8350456Z",
"runtimeStatus": "running",
"version": "1.0",
"status": "running",
"restartPolicy": "always",
"type": "docker",
"settings": {
"image": "blahblahblah.azurecr.io/superneatmodule:0.0.2-amd64.debug",
"imageHash": "sha256:ladkjsfaldkjfasdflkjasdfljasfljkasflja4",
"createOptions": "{}",
"env":{}