Toegang tot ingebouwde metrische gegevens in Azure IoT Edge
Van toepassing op: IoT Edge 1.5 IoT Edge 1.4
Belangrijk
IoT Edge 1.5 LTS en IoT Edge 1.4 LTS worden ondersteund releases. IoT Edge 1.4 LTS eindigt op 12 november 2024. Raadpleeg IoT Edge bijwerken als u een eerdere versie hebt.
De IoT Edge-runtimeonderdelen, de IoT Edge-hub en de IoT Edge-agent produceren ingebouwde metrische gegevens in de prometheus-indeling. Open deze metrische gegevens op afstand om de status van een apparaat IoT Edge bewaken.
U kunt uw eigen oplossing gebruiken om toegang te krijgen tot deze metrische gegevens. U kunt ook de module met metrische gegevensverzamelaar gebruiken, waarmee de ingebouwde metrische gegevens worden verzameld en naar Azure Monitor of Azure IoT Hub worden verzonden. Zie Metrische gegevens verzamelen en transporten voor meer informatie.
Metrische gegevens worden standaard automatisch weergegeven op poort 9600 van de edgeHub - en edgeAgent-modules (http://edgeHub:9600/metrics
en http://edgeAgent:9600/metrics
). Ze zijn niet standaard toegewezen aan de host.
Krijg toegang tot metrische gegevens van de host door de poort voor metrische gegevens beschikbaar te maken en toe te brengen vanuit de module createOptions
. In het onderstaande voorbeeld wordt de standaardpoort voor metrische gegevens toegewezen aan poort 9601 op de host:
{
"ExposedPorts": {
"9600/tcp": {}
},
"HostConfig": {
"PortBindings": {
"9600/tcp": [
{
"HostPort": "9601"
}
]
}
}
}
Kies verschillende en unieke hostpoortnummers als u de eindpunten voor metrische gegevens van edgeHub en edgeAgent toedeelt.
Notitie
De omgevingsvariabele httpSettings__enabled
mag niet worden ingesteld op false
ingebouwde metrische gegevens die beschikbaar zijn voor verzameling.
Omgevingsvariabelen die kunnen worden gebruikt om metrische gegevens uit te schakelen, worden vermeld in het azure/iotedge-opslagplaats-document.
Beschikbare metrische gegevens
Metrische gegevens bevatten tags om de aard van de verzamelde metrische gegevens te identificeren. Alle metrische gegevens bevatten de volgende tags:
Code | Beschrijving |
---|---|
iothub | De hub met wie het apparaat praat |
edge_device | De id van het huidige apparaat |
instance_number | Een GUID die de huidige runtime vertegenwoordigt. Bij opnieuw opstarten worden alle metrische gegevens opnieuw ingesteld. Deze GUID maakt het gemakkelijker om opnieuw opstarten af te stemmen. |
In de prometheus-indeling zijn er vier kerngegevenstypen: teller, meter, histogram en samenvatting. Zie de documentatie voor metrische gegevens van Prometheus voor meer informatie over de verschillende typen metrische gegevens.
De kwantielen voor het ingebouwde histogram en de metrische samenvattingsgegevens zijn 0.1, 0,5, 0,9 en 0,99.
De edgeHub-module produceert de volgende metrische gegevens:
Naam | Afmetingen | Beschrijving |
---|---|---|
edgehub_gettwin_total |
source (bewerkingsbron)id (module-id) |
Type: teller Totaal aantal GetTwin-aanroepen |
edgehub_messages_received_total |
route_output (uitvoer die bericht heeft verzonden)id |
Type: teller Totaal aantal berichten ontvangen van clients |
edgehub_messages_sent_total |
from (berichtbron)to (berichtbestemming)from_route_output to_route_input (berichtdoelinvoer)priority (berichtprioriteit naar bestemming) |
Type: teller Totaal aantal berichten dat naar clients of upstream is verzonden to_route_input is leeg wanneer to $upstream |
edgehub_reported_properties_total |
target (doel bijwerken)id |
Type: teller Totaal aantal updates van gerapporteerde eigenschappen |
edgehub_message_size_bytes |
id |
Type: samenvatting Berichtgrootte van clients Waarden kunnen worden gerapporteerd alsof NaN er gedurende een bepaalde periode (momenteel 10 minuten) geen nieuwe metingen worden gerapporteerd; voor summary het type worden overeenkomstige en _sum tellers _count verzonden. |
edgehub_gettwin_duration_seconds |
source id |
Type: samenvatting Tijd die nodig is voor het ophalen van dubbelbewerkingen |
edgehub_message_send_duration_seconds |
from to from_route_output to_route_input |
Type: samenvatting Tijd die nodig is om een bericht te verzenden |
edgehub_message_process_duration_seconds |
from to priority |
Type: samenvatting Tijd die nodig is om een bericht uit de wachtrij te verwerken |
edgehub_reported_properties_update_duration_seconds |
target id |
Type: samenvatting De tijd die nodig is om gerapporteerde eigenschappen bij te werken |
edgehub_direct_method_duration_seconds |
from (beller)to (ontvanger) |
Type: samenvatting Tijd die nodig is om een direct bericht op te lossen |
edgehub_direct_methods_total |
from to |
Type: teller Totaal aantal verzonden directe berichten |
edgehub_queue_length |
endpoint (berichtbron)priority (wachtrijprioriteit) |
Type: meter Huidige lengte van de wachtrij van EdgeHub voor een bepaalde prioriteit |
edgehub_messages_dropped_total |
reason (no_route, ttl_expiry)from from_route_output |
Type: teller Totaal aantal verwijderde berichten vanwege reden |
edgehub_messages_unack_total |
reason (storage_failure)from from_route_output |
Type: teller Totaal aantal berichten dat niet is bekend omdat de opslagfout is mislukt |
edgehub_offline_count_total |
id |
Type: teller Totaal aantal keren dat EdgeHub offline is gegaan |
edgehub_offline_duration_seconds |
id |
Type: samenvatting Time Edge Hub was offline |
edgehub_operation_retry_total |
id operation (bewerkingsnaam) |
Type: teller Totaal aantal keren dat edgeHub-bewerkingen opnieuw zijn geprobeerd |
edgehub_client_connect_failed_total |
id reason (niet geverifieerd) |
Type: teller Totaal aantal keren dat clients geen verbinding kunnen maken met EdgeHub |
De edgeAgent-module produceert de volgende metrische gegevens:
Naam | Afmetingen | Beschrijving |
---|---|---|
edgeAgent_total_time_running_correctly_seconds |
module_name |
Type: meter De hoeveelheid tijd die de module tijdens de implementatie heeft opgegeven en de status Actief heeft |
edgeAgent_total_time_expected_running_seconds |
module_name |
Type: meter De tijdsduur waarop de module is opgegeven in de implementatie |
edgeAgent_module_start_total |
module_name , module_version |
Type: teller Aantal keren dat EdgeAgent docker heeft gevraagd om de module te starten |
edgeAgent_module_stop_total |
module_name , module_version |
Type: teller Aantal keren dat EdgeAgent docker heeft gevraagd om de module te stoppen |
edgeAgent_command_latency_seconds |
command |
Type: meter Hoe lang het docker duurde om de opgegeven opdracht uit te voeren. Mogelijke opdrachten zijn: maken, bijwerken, verwijderen, starten, stoppen en opnieuw opstarten |
edgeAgent_iothub_syncs_total |
Type: teller Aantal keren dat edgeAgent heeft geprobeerd de tweeling te synchroniseren met iotHub, zowel geslaagd als mislukt. Dit nummer omvat zowel agent die een dubbel aanvraagt als hub die een update van een tweeling informeert |
|
edgeAgent_unsuccessful_iothub_syncs_total |
Type: teller Aantal keren dat edgeAgent de tweeling niet kan synchroniseren met iotHub. |
|
edgeAgent_deployment_time_seconds |
Type: teller De tijd die nodig was om een nieuwe implementatie te voltooien nadat een wijziging is ontvangen. |
|
edgeagent_direct_method_invocations_count |
method_name |
Type: teller Het aantal keren dat een ingebouwde directe methode edgeAgent wordt aangeroepen, zoals Ping of Restart. |
edgeAgent_host_uptime_seconds |
Type: meter Hoe lang de host is ingeschakeld |
|
edgeAgent_iotedged_uptime_seconds |
Type: meter Hoe lang iotedged actief is |
|
edgeAgent_available_disk_space_bytes |
disk_name , , disk_filesystem disk_filetype |
Type: meter Hoeveelheid ruimte op de schijf |
edgeAgent_total_disk_space_bytes |
disk_name , , disk_filesystem disk_filetype |
Type: meter Grootte van de schijf |
edgeAgent_used_memory_bytes |
module_name |
Type: meter Hoeveelheid RAM die door alle processen wordt gebruikt |
edgeAgent_total_memory_bytes |
module_name |
Type: meter RAM beschikbaar |
edgeAgent_used_cpu_percent |
module_name |
Type: histogram Percentage cpu dat door alle processen wordt gebruikt |
edgeAgent_created_pids_total |
module_name |
Type: meter Het aantal processen of threads dat de container heeft gemaakt |
edgeAgent_total_network_in_bytes |
module_name |
Type: meter Het aantal bytes dat van het netwerk is ontvangen |
edgeAgent_total_network_out_bytes |
module_name |
Type: meter Het aantal bytes dat naar het netwerk is verzonden |
edgeAgent_total_disk_read_bytes |
module_name |
Type: meter Het aantal bytes dat van de schijf is gelezen |
edgeAgent_total_disk_write_bytes |
module_name |
Type: meter Het aantal bytes dat naar schijf is geschreven |
edgeAgent_metadata |
edge_agent_version , , experimental_features host_information |
Type: meter Algemene metagegevens over het apparaat. De waarde is altijd 0, informatie wordt gecodeerd in de tags. Opmerking experimental_features en host_information zijn json-objecten. host_information ziet er als {"OperatingSystemType": "linux", "Architecture": "x86_64", "Version": "1.2.7", "Provisioning": {"Type": "dps.tpm", "DynamicReprovisioning": false, "AlwaysReprovisionOnStartup": false}, "ServerVersion": "20.10.11+azure-3", "KernelVersion": "5.11.0-1027-azure", "OperatingSystem": "Ubuntu 20.04.4 LTS", "NumCpus": 2, "Virtualized": "yes"} volgt uit. Opmerking ServerVersion : de Docker-versie en Version is de IoT Edge-beveiligingsdaemonversie. |